Как я могу положить много значений в 1 переменную или во многих переменных? - PullRequest
1 голос
/ 21 сентября 2019

Извлечение американских горок с использованием только дерева

            Sub RollerCoaster()

            Dim strType As String
            Dim blnLoop As Boolean
            Dim strCoaster As String

            strType = "Wood"

            Range("A2").Select
            blnLoop = True

            Do Until ActiveCell.Value = ""
                ActiveCell.Offset(1, 0).Select
                strType = ActiveCell.Offset(0, 2).Value

                    If strType = "Wood" Then
                        strCoaster = ActiveCell.Value
                        blnLoop = False
                    Else
                    End If

            Loop

            MsgBox ("The RollerCoaster that are made of Wood are " & strCoaster)

            End Sub

Итак, я создал Sub, который находит американские горки из дерева и показывает, какие американские горки сделаны из дерева в сообщениикоробка.Тем не менее, как я могу сделать так, чтобы в моем коде отображалось более одной американской горки, если у меня их больше в списке.(Посмотрите на изображение)

1 Ответ

0 голосов
/ 21 сентября 2019

Вы можете создать массив для получения каждого значения.Для этого вы можете затемнить массив строк с помощью кода Dim stringArray () As String, а затем включить каждое значение strCoaster в этот массив.Вы также можете сделать небольшую настройку для конкатенации в присваивании переменных, используя следующий код:

        Sub RollerCoaster()

        Dim strType As String
        Dim blnLoop As Boolean
        Dim strCoaster As String

        strType = "Wood"

        Range("A2").Select
        blnLoop = True

        Do Until ActiveCell.Value = ""
            ActiveCell.Offset(1, 0).Select
            strType = ActiveCell.Offset(0, 2).Value

                If strType = "Wood" Then
                    strCoaster = ActiveCell.Value & " ," & strCoaster
                    blnLoop = False
                Else
                End If

        Loop

        MsgBox ("The RollerCoaster that are made of Wood are " & strCoaster)

        End Sub

Если вы итеративно объединяете значения, вы можете перечислить все значения.Вы также можете использовать & vbCrLf & для разрывов строк, если хотите.

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