以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [原创]分享:快速清除单元格零值  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=115140)

--  作者:一丁
--  发布时间:2018/3/1 17:03:00
--  [原创]分享:快速清除单元格零值
FOXTABLE提供一个“快速清零”的功能按钮,能够清除选定区域的单元格内的零值,但是存在一个弊端,如果选定区域内有表达式列,则会报错

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180301165543.png
图片点击可在新窗口打开查看
学习狐表快一个月了,老是一天在向老师们请教,今天也来分享自己写的一段代码,功能是对当前表整个表的零值快速清除,无需选择区域,效率比狐表本身的功能按钮要高出很多
喜欢就顶顶呗


For Each cl As Col In CurrentTable.Cols
    Dim cFname As String = cl.Name
    Dim dc As DataCol  = CurrentTable.DataTable.DataCols(cFname )
    Dim pi As System.Reflection.PropertyInfo = dc.Gettype.getproperty("IsTemporary",Reflection.BindingFlags.nonpublic Or Reflection.BindingFlags.Instance)
    If cl.IsNumeric And pi.getvalue(dc,Nothing) = False Then
        For Each r As Row In CurrentTable.Rows
            If r(cFname) = 0 Then
                r(cFname) = Nothing
            End If
        Next
    End If
Next

[此贴子已经被作者于2018/3/1 17:04:13编辑过]

--  作者:有点甜
--  发布时间:2018/3/1 17:54:00
--  
嗯嗯,不错。
--  作者:shenyl0211
--  发布时间:2018/3/2 10:06:00
--  
顶你