我想将输入的文本从MsgBox添加到Msgbox我得到了这个,但它不起作用。任何人都可以帮助我吗?
Dim x
x = MsgBox("Welcome to this software. Are you new with this?", vbYesNo +
vbQuestion, "Welcome!")
Dim f
f = strMessage =Inputbox("First enter your name","The software")
Dim z
z = MsgBox(Welcome strMessage!)
答案 0 :(得分:0)
这里有一些问题。我会一个接一个地浏览它们。
f = strMessage = InputBox("First enter your name","The software")
我假设您尝试将用户输入的值InputBox
存储到某个变量中 - f
或strMessage
,或两者兼而有之。 VBScript不允许以您编写的方式进行多次分配。相反,VBScript正在测试存储在strMessage
(您尚未声明或初始化)的值是否等于用户输入的值。然后将该测试的值(将为True或False)存储在f
。
如果您尝试仅在f
中存储用户的输入,这将有效:
f = InputBox("First enter your name","The software")
如果您想将其存储在f
和strMessage
中,则需要两个赋值语句:
Dim strMessage
f = InputBox("First enter your name","The software")
strMessage = f
接下来,这几行有几个问题:
Dim z
z = MsgBox(Welcome strMessage!)
首先,只有一个参数的MsgBox
将始终返回1,因此在变量z
中没有实际用途。
接下来,您没有在MsgBox
的第一个参数周围加上引号。结果,Welcome strMessage!
混淆了解释器,并抛出错误。如果您改为添加引号"Welcome strMessage!"
,则会解决错误。
但是,我希望您能够将用户的输入显示回来。在这种情况下,您不能只将变量放在引号内 - 您需要使用&
将其连接起来。因此,你应该来:
MsgBox("Welcome, " & f & "!")
最后,重要提示,您拥有的变量名称(x
,f
,strMessage
和z
)并不具有特别的描述性。考虑一些有用的名称,例如isUserNew
和userName
。通过这些更改,您可以:
Dim isUserNew
Dim userName
isUserNew = MsgBox("Welcome to this software. Are you new with this?", vbYesNo, "Welcome!")
userName = Inputbox("First enter your name","The software")
MsgBox("Welcome, " & userName & "!")