以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]换数据类型错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=192015)

--  作者:18107532666
--  发布时间:2024/5/23 16:41:00
--  [求助]换数据类型错误
 以下显示转换数据类型错误,请教老师代码怎么改

Case "隧道工程"\'针对此表的代码 
        If e.DataRow("第1段_围岩类别") = True Then               
            For Each dc As DataCol In e.DataTable.datacols 
                If dc.name Like e.DataRow("第1段_围岩类别") Then
                    e.DataRow("第1段_工程量") = e.DataRow(dc.name) * e.DataRow("第1段_长度")
                End If
            Next
            
        End If
[此贴子已经被作者于2024/5/23 16:51:48编辑过]

--  作者:有点蓝
--  发布时间:2024/5/23 16:52:00
--  
2句代码就够了

Case "隧道工程"\'针对此表的代码 
        e.DataRow("第1段_工程量") = e.DataRow("第1段_围岩类别") * e.DataRow("第1段_长度")

--  作者:18107532666
--  发布时间:2024/5/23 16:56:00
--  
第1段_围岩类别  列中可以填入字符, 在所有列名中遍历,列如果这个包含这个字符,则e.DataRow("第1段_工程量") = e.DataRow(包含这个字符的列) * e.DataRow("第1段_长度")
--  作者:有点蓝
--  发布时间:2024/5/23 17:03:00
--  
这个不合理。如果有多个列包含这个字符,e.DataRow("第1段_工程量") = e.DataRow(这里要使用哪一个列?!) * e.DataRow("第1段_长度")