Таблица умножения в msgbox - PullRequest
0 голосов
/ 07 ноября 2018

Мне нужно показать на том же MsgBox таблицу умножения числа, выбранного пользователем.

Sub Multiplication1()

    Dim number As Integer
    Dim i As Integer
    Dim res As Integer

    number = InputBox(" Write number ")

    For i = 1 To 10
        res = number * i

        MsgBox (number & " *" & i & " =" & res & vbCrLf)
    Next

End Sub

В этом коде для каждой итерации цикла у меня теперь есть MsgBox с правильным ответом, я хочу, чтобы все ответы были в одном сообщении.

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

Несколько замечаний: не используйте Integer, оно все равно хранится как Long в VBA, и вам не нужно объявлять все переменные в отдельных строках :) см. Код ниже. И чтобы решить вашу проблему, добавьте каждый результат к строковой переменной в цикле, после чего отобразите ее в окне сообщения.

Sub Multiplication1()
    Dim number As Long, i As Long, res As Long, s As String
    number = InputBox(" Write number ")
    s = ""
    For i = 1 To 10
        res = number * i
        s = s & (number & " *" & i & " =" & res & vbCrLf)
    Next

    MsgBox s
End Sub
0 голосов
/ 07 ноября 2018

Вам нужно сгенерировать одну строку с таблицей, перед тем, как отобразит окно сообщения:

Sub Multiplication1()

Dim number As Integer
Dim i As Integer
Dim res As Integer
Dim myTable as String


number = InputBox(" Write number ")

For i = 1 To 10
    res = number * i
    myTable = myTable & number & " *" & i & " =" & res & vbCrLf
Next i

MsgBox myTable

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...