список combobox, когда range.cells.count = 1 vba

Мне сложно заполнить поле со списком из диапазона, когда диапазон – это только одна ячейка.

У меня есть следующий код:

Private Sub cboEquip_Change() Dim SourceData As Variant Dim col As Variant Dim rng As Range Set ws = Sheets("Details") On Error Resume Next 'Matches text from cboEquip to appropriate column in Details sheet col = WorksheetFunction.Match(Me.cboEquip.Value, ws.Range("1:1"), 0) 'Sets number of items in list lr = ws.Cells(ws.Rows.Count, col).End(xlUp).Row 'Chooses correct range Set rng = Sheets("Details").Range(Sheets("Details").Cells(2, col), Sheets("Details").Cells(lr, col)) 'Changes cboUnit based on changes from cboEquip SourceData = rng.Value With Me.cboUnit .Clear .List = SourceData .ListIndex = 0 End With End Sub 

Код работает так, как это предусмотрено, заполняя список combobox на основе ввода из другого combobox, когда диапазон cell.count> 1, однако, когда диапазон, из которого он вытягивается, является отдельной ячейкой, он не будет заполнять список.

Я попытался компенсировать диапазон по строке для учета этого, но затем пустая ячейка является опцией для всех диапазонов, которые в настоящее время имеют число ячеек больше 1.

Есть ли способ заполнить combobox из диапазона, который является только одной ячейкой?

Я думаю, поскольку SourceData – это не массив с одним значением, необходимым для его тестирования. Попробуй это:

 With Me.cboUnit .Clear If IsArray(sourceData) Then .List = sourceData Else .AddItem sourceData End If .ListIndex = 0 End With 
  • VBA Выбор фильтрованных ячеек
  • Excel VBA combobox не позволяет выбирать определенные элементы из списка
  • не удалось заполнить combobox, используя .rowsource {vba excel}
  • Установить значение combobox с VBA
  • Excel Userform - Обратный фокус на ComboBox после нажатия кнопки ввода
  • Заполнение Excel VBA Combo-box с заголовками столбцов
  • Три Comboboxes с одним раскрывающимся функционалом
  • Excel Combo Box Обновить раскрывающееся меню?
  • Компоновка VBA Excel не отображает значение после выбора опции
  • EXCEL VBA USERFORM - Сделать значение отрицательным, если выбран определенный combobox
  • Как я могу предоставлять текстовые предложения через VBA, когда пользователь выбирает ячейку в листе Excel
  • Interesting Posts

    Сравнивая несколько столбцов на двух листах, выделяя их и устанавливая уровень допуска

    VBA устанавливает значения столбцов в виде заголовков таблиц

    Как выделить ячейку в Excel с помощью условного if?

    Как использовать формулу, в которой диапазон всегда отличается

    Ошибка времени выполнения «1004» с использованием формулы в макросе vba

    Обновление столбца на основе vlookup

    Подсчитайте позицию в группе в excel

    Ошибка памяти Python pandas

    Как экспортировать результаты ListDataProvider, чтобы преуспеть в GWT

    (SSIS) Извлечение нескольких областей из листа Excel для импорта БД

    ssis фильтрует строки со значениями, начинающимися с буквы

    Уникальный граф (Excel VBA vs Formula) Быстрый подход

    Поиск всех ячеек с константами

    Текст был усечен или один или несколько символов не совпадали на целевой кодовой странице

    dataTime тип данных, преобразованный в строку при импорте файла excel в протеже с использованием Celfie Plugin,

    Давайте будем гением компьютера.