以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]表达式能否换成代码?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80588)

--  作者:起源
--  发布时间:2016/1/26 21:47:00
--  [求助]表达式能否换成代码?
[求助]表达式能否换成代码?

我在第七列设置了表达式,IIF((第一列=‘是’)AND(第二列=‘否’)AND((第三列=1)OR(第四列=1))AND((第五列+第六列)>1),第五列+第六列,0)

我现在想在窗口的TEXTBOX控件里设置代码,这个TEXTBOX直接代替了第七列;

能否把这条表达式换成代码?
要怎样写?

--  作者:大红袍
--  发布时间:2016/1/27 0:28:00
--  

不能。除非你多加一列,然后写表达式

 

iif(新加的列 is null, 原来的表达式, 新加的列)

 

否则,就只能写dataColChanged事件代码


--  作者:起源
--  发布时间:2016/1/27 9:36:00
--  
你好,请问dataColChanged事件代码怎么写?

能否按上面表达式所表达的意思 写个代码出来吗?

感谢!!!



--  作者:大红袍
--  发布时间:2016/1/27 9:56:00
--  

1、那一列改成数据列;

 

2、datacolchanged事件

 

Select Case e.DataCol.Name
    Case "第一列","第二列","第三列","第四列","第五列","第六列"
        If (e.DataRow("第一列")="是") And (e.DataRow("第二列"="否") And ((e.DataRow("第三列")=1) Or (e.DataRow("第四列")=1)) And ((e.DataRow("第五列")+e.DataRow("第六列"))>1))
            e.DataRow("第十列") = e.DataRow("第五列")+e.DataRow("第六列")
        Else
            e.DataRow("第十列") = Nothing
        End If
End Select


--  作者:起源
--  发布时间:2016/1/27 15:03:00
--  
设置了,谢谢了图片点击可在新窗口打开查看
--  作者:起源
--  发布时间:2016/1/28 13:41:00
--  [求助]IF代码
大红袍前辈:

If TABLES("表A").CURRENT("第一列") >= 60 Then
    Output.Show( 
"是")
End 
If


请问这个代码哪里错了!!!!???

--  作者:大红袍
--  发布时间:2016/1/28 14:49:00
--  

报什么错?

 

Dim nr As Row = Tables("表A").CURRENT

If nr IsNot Nothing AndAlso nr("第一列") >= "60" Then
    Output.Show( "是")
End If


--  作者:起源
--  发布时间:2016/1/28 15:00:00
--  
好的,明白,谢谢


其实没有报错,只是没有反应图片点击可在新窗口打开查看