以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]小数自动进1 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=53990) |
||||
-- 作者:ZHX88863808 -- 发布时间:2014/7/19 15:20:00 -- [求助]小数自动进1 我表中有A列/B列=C列,我想在D列自动填入C列的任何小数都进位的数,请老师和各位高手们帮忙写个代码,谢谢!(现把项目上传)
|
||||
-- 作者:ZHX88863808 -- 发布时间:2014/7/20 7:44:00 -- 怎么没有人帮忙,还是难以做到? |
||||
-- 作者:y2287958 -- 发布时间:2014/7/20 7:52:00 -- http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=53900&skin=0 |
||||
-- 作者:y2287958 -- 发布时间:2014/7/20 7:58:00 -- 非常简单 将“c”列改为数据列,然后在DataColChanged事件中设置以下代码: Select Case e.DataCol.Name Case "A","B" e.DataRow("第四列") = Math.Ceiling(e.DataRow("A")/e.DataRow("B")) End Select |
||||
-- 作者:ZHX88863808 -- 发布时间:2014/7/20 8:35:00 -- 非常感谢,正是我想要的,谢谢!!! |
||||
-- 作者:ZHX88863808 -- 发布时间:2014/7/20 10:55:00 -- 不好意思,上面这个代码,在A列和B列为输入数据是非常有效,但是当A列为表达式列,B列数据来源于其他表时,第四列就不产生结果,除非把B列再重新输入一遍才有效,请老师们再帮我修改一下(现把项目再传上,请看表C),谢谢!
|
||||
-- 作者:有点甜 -- 发布时间:2014/7/20 11:10:00 -- 这种比较复杂,建议还是用表达式比较方便。加一列表达式 Convert([ZNSN]+[DPSHN]+0.5,\'System.Int32\') |
||||
-- 作者:ZHX88863808 -- 发布时间:2014/7/20 14:03:00 -- 有点甜老师,刚才估计您在休息,没敢打扰,现在我想问,上面这个表达式前面的加号改成乘号即可用,如果改成除号就不行,不知为什么,请帮忙写个两列相除而得到小数进位的表达式,谢谢! |
||||
-- 作者:有点甜 -- 发布时间:2014/7/20 14:24:00 -- 相除也是可以,你说的不行,是什么意思。 |
||||
-- 作者:ZHX88863808 -- 发布时间:2014/7/20 14:48:00 -- 我把表达式改成Convert([ZNSN]/[DPSHN]+0.5,\'System.Int32\') 确认时就会出现含Value was either too large or too small for an Int32 的窗口,不知为什么?
|