Foxtable(狐表)用户栏目专家坐堂 → 请教最快速度清空表的空行空格代码


  共有2143人关注过本帖树形打印复制链接

主题:请教最快速度清空表的空行空格代码

帅哥哟,离线,有人找我吗?
hbhb
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5061 积分:13092 威望:0 精华:0 注册:2014/5/15 21:34:00
请教最快速度清空表的空行空格代码  发帖心情 Post By:2017/4/6 22:49:00 [只看该作者]

色大师:下面一次清空表的空行空格如何优化?
Dim Filter As String                                   '---------清除空行-----
For Each dc As DataCol In b1.DataTable.DataCols
    Filter = Filter & " And " & dc.Name & " Is Null"
Next
Filter = Filter.SubString(5)

b1.DataTable.DeleteFor(Filter)


For Each r1 As DataRow In b1.DataTable.dataRows    '---清除所有空格-----     
    For Each l1 As DataCol In b1.DataTable.dataCols
        If r1.IsNull(l1.name) = False  Then
            r1(l1.name) = cstr(trim(r1(l1.name))).replace(" ","")
        End If
    Next
Next


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/7 2:20:00 [只看该作者]

 已经是最优解了。

 回到顶部
帅哥哟,离线,有人找我吗?
hbhb
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5061 积分:13092 威望:0 精华:0 注册:2014/5/15 21:34:00
  发帖心情 Post By:2017/4/7 9:29:00 [只看该作者]

请问为何有时增加条件判断反而会降低效率?按理说不是减少了工作量吗?

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110629 积分:563047 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/4/7 9:34:00 [只看该作者]

除非你的条件判断能显著减少循环的次数,否则只会增加工作量

 回到顶部
帅哥哟,离线,有人找我吗?
有点青
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:573 积分:2961 威望:0 精华:0 注册:2016/10/27 14:33:00
  发帖心情 Post By:2017/4/7 9:37:00 [只看该作者]

以下是引用hbhb在2017/4/7 9:29:00的发言:
请问为何有时增加条件判断反而会降低效率?按理说不是减少了工作量吗?

 

增加条件判断肯定会影响查询效率,条件越多效率越低。

 

条件多以后,获取的数据可能会较少,后续的代码执行的次数可能就较少,所以有一种给你的错觉。


 回到顶部