以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  这些代码怎么用FOR EACH语句,简化写?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=74761)

--  作者:yancheng
--  发布时间:2015/9/18 12:21:00
--  这些代码怎么用FOR EACH语句,简化写?
If e.Col.Name ="选" Or e.Col.Name ="定额编码" Or e.Col.Name = "进货单价" Or e.Col.Name = "进货数量" Then
e.cancel= False
Else
e.Cancel = True
End If

表,PrepareEdit,中。 这些代码怎么用FOR EACH语句,简化写?

--  作者:jspta
--  发布时间:2015/9/18 12:30:00
--  
for each 是循环,这个简化不了。

用Select case 语句,对多条件判断比IF 简洁。


--  作者:yancheng
--  发布时间:2015/9/18 12:58:00
--  
OR连接的,不能用FOR EACH是吗?
SELECT怎么写?

--  作者:yancheng
--  发布时间:2015/9/18 13:20:00
--  
Dim strs() As String={"机具编号","选","进货数量","进货单价"}
For Each str As String In strs
    Select Case e.Col.Name
        Case str
            e.cancel= False
        Case Else
            e.Cancel = True
    End Select
Next

这样写,也不行

--  作者:jspta
--  发布时间:2015/9/18 13:23:00
--  
  Select Case e.Col.Name
        Case "机具编号","选","进货数量","进货单价"
        Case Else
            e.Cancel = True
    End Select