以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]㎡在表达式中不认和单元格几个数值求和如可在表达式中实现  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=108169)

--  作者:aping
--  发布时间:2017/10/17 15:52:00
--  [求助]㎡在表达式中不认和单元格几个数值求和如可在表达式中实现
如题, ㎡符号在表达式中不认,和单元格中几个数值求和怎么在表达式中实现,求解答
图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20171017154804.png
图片点击可在新窗口打开查看

--  作者:aping
--  发布时间:2017/10/17 16:00:00
--  
要沉了,老师请教一下
--  作者:aping
--  发布时间:2017/10/17 16:07:00
--  
我想的是实现:当报表单位为“㎡”时,报价数量=规格单元格的和*数量*长度;当报表单位为“件”时,报价数量=数量;当报表单位为“m”时,报价数量=数量*长度。
--  作者:aping
--  发布时间:2017/10/17 16:45:00
--  
老师,别让这个沉了,谢谢了
--  作者:有点甜
--  发布时间:2017/10/17 18:10:00
--  

不建议用表达式,建议用代码处理,DataColChanged事件,写代码

 

Select Case e.DataCol.name
   
    Case "规格", "长度", "数量", "报表单位"
        Dim s As String = e.DataRow("报表单位")
        If s = "㎡" Then
            e.DataRow("报表数量") = Eval2(e.DataRow("规格"))*e.DataRow("长度")*e.DataRow("数量")
        ElseIf s = "m" Then
            e.DataRow("报表数量") = e.DataRow("长度")*e.DataRow("数量")
        ElseIf s="件" Then
            e.DataRow("报表数量") = e.DataRow("数量")
        End If
End Select


--  作者:aping
--  发布时间:2017/10/17 20:49:00
--  
先谢谢了,回头看能不能解决