Foxtable(狐表)用户栏目专家坐堂 → 不能整除如何取整?


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

主题:不能整除如何取整?

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


加好友 发短信
等级:六尾狐 帖子:1370 积分:9115 威望:0 精华:0 注册:2020/11/4 22:15:00
不能整除如何取整?  发帖心情 Post By:2025/1/10 10:11:00 [只看该作者]

列1 列2 列3 说明列1/列二的值
3000 950 3 3.157894737
2000 600 3 3.333333333
1000 350 3 2.857142857
1500 500 3 3
5000 1000 5 5

执行下面代码,无法实现上面的需求,如何解决?
Dim dre As DataRow = e.DataRow
Select Case e.DataCol.Name
    Case "列1", "列2"
        If dre.IsNull("列1") OrElse dre.IsNull("列2") Then
            dre("列3") = Nothing
        
        Else
            'dre("列3") = dre("列1") / dre("列2")
            Dim d As Double = dre("列1") / dre("列2")
            '            If d > 0 Then
            If d = 0 Then 
                dre("列3") = d 
            Else
                dre("列3") = d+ 1
                
                
            End If
         
        End If
End Select

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


加好友 发短信
等级:超级版主 帖子:111711 积分:568691 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/10 10:15:00 [只看该作者]

Ceiling返回大于或等于指定数字的最小整数
Floor返回小于或等于指定数字的最大整数

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


加好友 发短信
等级:六尾狐 帖子:1370 积分:9115 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2025/1/10 11:15:00 [只看该作者]

Dim dre As DataRow = e.DataRow
Select Case e.DataCol.Name
    Case "第一列", "第二列"
        If dre.IsNull("第一列") OrElse dre.IsNull("第二列") Then
            dre("第三列") = Nothing
        Else
            dre("第三列") = dre("第一列") / dre("第二列")          
            Dim Lng As Long = Math.Ceiling(dre("第三列")) 
        End If
End Select

执行上面的代码,无法实现下面需求,下面红色的第三列,如何实现?
第一列 第二列 第三列 说明列1/列二的值
3000 950 4 3.157894737
2000 600 4 3.333333333
1000 350 3 2.857142857
1500 500 3 3
5000 1000 5 5





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


加好友 发短信
等级:超级版主 帖子:111711 积分:568691 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/10 11:19:00 [只看该作者]

强烈建议先花一个月时间,重新学习编程基础。基础的概念如果不搞懂,写再多的代码都学不会。

dre("第三列") = Math.Ceiling(dre("第一列") / dre("第二列") )      

 回到顶部