Как добавить вход из InputBox в MsgBox

Я хочу добавить введенный текст из 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!)

1 ответ

Есть несколько проблем с тем, что у вас здесь. Я пройдусь по ним один за другим.

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 & "!")
Другие вопросы по тегам