以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 部分代码不执行 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=124221) |
-- 作者:wuchangke4 -- 发布时间:2018/9/2 16:02:00 -- 部分代码不执行 Select Case e.DataCol.name Case "Lwg12","Lwg18","Lwg20","Lwg22","Lwg25","Lwg28","Lwg32" \',"lwg16" Dim sksumlwg As Double = 0 Dim n1() As String = {"Lwg12","Lwg18","Lwg20","Lwg22","Lwg25","Lwg28","Lwg32"} For Each n As String In n1 If e.DataTable.DataCols.contains(n) sksumlwg = sksumlwg + e.DataRow(n) End If Next e.DataRow("Sjlwg") = sksumlwg Case "Gyg12","Gyg10","Gyg8","Gyg6" Dim sksumgyg As Double = 0 Dim n2() As String = {"Gyg12","Gyg10","Gyg8","Gyg6"} For Each n As String In n2 If e.DataTable.DataCols.contains(n) sksumgyg = sksumgyg + e.DataRow(n) End If Next e.DataRow("Sjgyg") = sksumgyg End Select If e.DataCol.name = "Jianglwg" Then e.DataRow("jianglwg") = e.DataRow("Lwg32") + e.DataRow("lwg28") + e.DataRow("Lwg25") - e.DataRow("LwgN4") e.DataRow("jianggyg") = e.DataRow("Gyg10") - e.DataRow("GygN7") e.DataRow("jiangj") = e.DataRow("jianglwg") + e.DataRow("jianggyg") End If Select Case e.DataCol.name Case "Skzd" If e.DataRow("Beizu") <> "重复冲桩" Then e.DataRow("Zjfl") = 3.14 * e.DataRow("zhuangchang") * e.DataRow("zhuangjing")/2 * e.DataRow("zhuangjing")/2 End If Case "Zhuangjing" 从这里开始代码不执行,求助 If e.DataRow("Zhuangjing") = 1.6 Then e.DataRow("Zjflqe") = e.DataRow("Zjfl") * 230 Else If e.DataRow("Zhuangjing") = 2.2 Then e.DataRow("Zjflqe") = e.DataRow("zjfl") * 197.4 End If End Select
|
-- 作者:有点甜 -- 发布时间:2018/9/2 16:11:00 -- 1、具体说明你的问题,什么代码没有执行?你执行什么操作以后,对应要执行什么代码?
2、你可以在代码里面加入msgbox弹出值,看是否执行到了对应的代码。 |
-- 作者:wuchangke4 -- 发布时间:2018/9/2 16:13:00 -- Case "Zhuangjing" 从这里开始代码不执行,求助 If e.DataRow("Zhuangjing") = 1.6 Then e.DataRow("Zjflqe") = e.DataRow("Zjfl") * 230 Else If e.DataRow("Zhuangjing") = 2.2 Then e.DataRow("Zjflqe") = e.DataRow("zjfl") * 197.4 End If End Select
|
-- 作者:有点甜 -- 发布时间:2018/9/2 16:14:00 -- 你修改了列【Zhuangjing】的值,才会执行的。 |
-- 作者:wuchangke4 -- 发布时间:2018/9/2 16:21:00 -- 我重置列也不会执行呢 |
-- 作者:wuchangke4 -- 发布时间:2018/9/2 16:25:00 -- 【Zhuangjing】桩径有1.6米、1.8米、2.2米,我要求1.6米的单价为230元,2.2米的为179.4元,但代码不执行,急死了 |
-- 作者:wuchangke4 -- 发布时间:2018/9/2 16:53:00 -- 现在要求列【zhuangjing】的值为1.6米时,对应的列[zjflqe]=列【zjfl】* 230 能用if e.datarow("zhuangjing") = 1.6 then e.datarow("zjflqe") = e.datarow("zjflqe") * 230 end if 代码有问题吗?
|
-- 作者:wuchangke4 -- 发布时间:2018/9/2 17:22:00 -- 我知道了,不能作【Zhuangjing】= 1.6 而只能是 【zhuangjing】> 1.5 and [zhuangjing] < 1.7 |
-- 作者:有点甜 -- 发布时间:2018/9/2 20:03:00 -- 以下是引用wuchangke4在2018/9/2 17:22:00的发言:
我知道了,不能作【Zhuangjing】= 1.6 而只能是 【zhuangjing】> 1.5 and [zhuangjing] < 1.7
应该是精度问题,看看
http://www.foxtable.com/webhelp/scr/1829.htm
你可以把这个列改成高精度小数。 |