以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  程序问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=189671)

--  作者:侠客1985
--  发布时间:2023/12/15 21:40:00
--  程序问题

程序1

If DataTables("订单").dataCols("金额").IsNumeric=True

 messageBox.show("学编程得下苦工尽量减少外界干扰!","警示")

End If


 程序2

For Each dc As DataCol In DataTables("订单").DataCols

    If dc.IsNumeric Then

        Output.Show(dc.Name)

    End If

Next


老师,程序中IsNumeric的结果是逻辑值,为什么在程序2中默认dc为数值型呢?程序2应该是下面的写法么

 For Each dc As DataCol In DataTables("订单").DataCols

    If dc.IsNumeric=True Then

        Output.Show(dc.Name)

    End If

Next



--  作者:有点蓝
--  发布时间:2023/12/16 9:25:00
--  
If dc.IsNumeric Then   ‘这个和  If dc.IsNumeric=True Then  等效
IsNumeric返回值本身就是逻辑型,不是True就是False。dc.IsNumeric=True也是逻辑型,只要下面的【条件表达式】是逻辑型即可

If语句有三种形式

单分支形式:

If 条件表达式 Then
    代码

End If

如果条件表达式的计算结果为True,也就是条件成立的话,则执行代码。