Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:除法进一法如何实现

1楼
timber83 发表于:2025/5/9 10:44:00
有两列,列1,列2,列3,要求【列1】除以【列2】小于等于3时,【列3】=1;小于等于6时,【列3】=2;小于等于9时,【列3】=3,,,,,,依次类推
问题1,这个能用表达式实现吗?如果能实现,该怎么编码?
问题2,这个能用其他方式实现吗?该如何编码

2楼
有点蓝 发表于:2025/5/9 10:55:00
1、如果如果不是无限的比较,可以使用表达式
IIF(列2=0,null,IIF(列1/列2<=3,1,IIF(列1/列2<=6,2,IIF(…………))))

2、参考:http://www.foxtable.com/webhelp/topics/1452.htm

Select Case e.DataCol.Name
    Case
 "
列1","列2"
        
Dim dr As DataRow = e.DataRow
        
If dr("列2")<> 0 Then
dim d as double =  dr("列1") / dr("列2")
if d <=3 then
dr("列3") = 1
elseif d <=6 then
dr("列3") = 2
……
……
end if
        End If
End
 Select
3楼
timber83 发表于:2025/5/9 11:08:00
这样要穷举。除法里面有进一法,我查了一下有math.ceiling的方法,这个支持吗?
4楼
有点蓝 发表于:2025/5/9 11:25:00
不支持。如果是无限的比较,整个地球都无法解决这种问题,找外星人看会不会。如果是有限的,到哪里结束?
5楼
y2287958 发表于:2025/5/9 11:57:00
For Each 行 As DataRow In DataTables("表A").DataRows
    Dim i As Double = 行("列1") / 行("列2")
    行("列31")=IIf(i Mod 3 = 0, i / 3, Math.Ceiling(i / 3)))
Next 
共5 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.