Foxtable(狐表)用户栏目专家坐堂 → 查询表可以用代码将为0的单元格设置为Nothing,希望表达式列也可以


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

主题:查询表可以用代码将为0的单元格设置为Nothing,希望表达式列也可以

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
查询表可以用代码将为0的单元格设置为Nothing,希望表达式列也可以  发帖心情 Post By:2011/6/22 8:48:00 [只看该作者]

如题。这样在写addcol时,就可以简化表达式代码了。


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/6/22 8:56:00 [只看该作者]

Null 好像可以呀 , http://www.datasoft.com.cn/dispbbs.asp?boardid=2&Id=10752 3楼的代码就是根据你“关于专业统计工具的问题”一贴中10楼代码改写的,即生成统计表时,数量、金额变为空值。
[此贴子已经被作者于2011-6-22 9:51:36编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/22 9:02:00 [只看该作者]

是的,可以的

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2011/6/22 10:59:00 [只看该作者]

用事实说话:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目17.table


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/22 11:28:00 [只看该作者]

Dim t As Table = Tables("表A")
t.DataTable.DataCols.Add("测试列",Gettype(Double), "IIf([工资]/444-1 = 0 ,Null,[工资]/444-1 = 0)")

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2011/6/22 11:35:00 [只看该作者]

我知道这样,我就是想简化代码的。请看看我一楼的发帖意思。。

用了Combine组合统计结果,后面添加了一堆的addcol,再加上判断,看着一堆重复的代码都烦


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/22 12:15:00 [只看该作者]

呵呵,这个简化不了的

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/6/22 12:29:00 [只看该作者]

t.Current("测试列") = Nothing  改为:

 

t.DataTable.dataCols("测试列").Expression = ""
t.DataTable.dataCols("测试列").Expression = Nothing     '  或 "Null"


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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2011/6/22 13:10:00 [只看该作者]

以下是引用mr725在2011-6-22 12:29:00的发言:

t.Current("测试列") = Nothing  改为:

 

t.DataTable.dataCols("测试列").Expression = ""
t.DataTable.dataCols("测试列").Expression = Nothing     '  或 "Null"

 

这样一搞,表达式列的数据就全没了。我只是想将0设置为空。

 

现在只能在表达式列增加判断了。

看看Combine后的扫尾工作,不但要增加表达式列,还要调整列位置,还要隐藏不需要的列,看着这堆没有任何技术含量的代码都很烦:

 


图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2011/6/22 13:28:00 [只看该作者]

哈哈,同烦!
不过应该可以简化点:利用数组及For ...Next
[此贴子已经被作者于2011-6-22 13:30:22编辑过]

 回到顶部
总数 14 1 2 下一页