Как заполнить список на основе условного оператора - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь заполнить список в пользовательской форме, но список необходимо изменить в зависимости от того, что находится в ячейке на активном листе. Сложность в том, что я пытаюсь сослаться на именованный диапазон, который находится на другом листе. Так, например, если ячейка говорит «привет» - я бы хотел проверить, чтобы ячейка сказала привет, а затем go в именованный диапазон на другом листе, названном «привет», и ввести значения в этом диапазоне в список. ,

Вот что у меня пока есть:

Private Sub UserForm_Initialize()

'Populate Combobox Based on Cell Value
Dim celltxt As String
celltxt = ActiveSheet.Range("cellTest").Text

    If InStr(1, celltxt, "hi") Then
        'Code to bring in routes from named range called "hi"
        ListBox1.RowSource = Worksheets("Sheet4").Range("hi").Value
    End If

End Sub

Я бы повторил сегмент кода if-end if несколько раз, основываясь на других значениях ячеек, таких как «эй» или « что случилось. "

Я получаю ошибку 1004 во время выполнения. Помощь !!

1 Ответ

0 голосов
/ 29 января 2020

Проблема заключалась в том, что я переименовал «Лист 4» в «DropDown», потому что именно там я хранил все свои выпадающие меню. Код должен выглядеть так:

Private Sub UserForm_Initialize()

'Populate Combobox Based on Cell Value
Dim celltxt As String
celltxt = ActiveSheet.Range("cellTest").Text

    If InStr(1, celltxt, "hi") Then
        'Code to bring in routes from named range called "hi"
        ListBox1.RowSource = Worksheets("DropDown").Range("hi").Value
    End If

End Sub

И это прекрасно работает!

...