问题出在为什么要用or连接。
or连接粗略的讲呢是这样子的:
True or True = True
True or False = True
False or True = True
False or False = False
即所谓相同出1,不同出0(True相当于1,False相当于0)。
这样的话呢,本身用Or连接就不对,而且Msg没有返回值,当然会有问题。
Private Sub Command1_Click()
Dim a As Boolean
Dim b As Boolean
Dim c As Boolean
Dim d As Boolean
a = True: b = False: c = True: d = False
msg (a): msg (b): msg (c): msg (d)
End Sub
Sub msg(a As Boolean)
MsgBox a
End Sub
按你的方式定义 通常会导致 b,c,d 没有被定义
调用 msg 时 不是用 or 连接 同时我也不知道你为什么要这么连接
Dim a,b,c,d ,e as boolean
e=true
a = true: b = false :c = true :d = false
if a or b or c or d then
e=true
call mymsg(e)
else
e=false
call mymsg(e)
end if
sub mymsg(amsg as boolean)
msgbox amsg
end sub
这样做:
msgbox "你好"
me.AppActivate "窗体标题" '把窗体标题改成别一个程序实际的窗体标题