Я нашел эту ссылку здесь: VBA Code to Create Sheets based on the values in column AУкажите поля имени в ComboBox на основе столбца без повторения?
Это говорит мне, как создать список листов из столбца, на основе имен в одной из колонн на первом листе без повторения.
Я попытался перевести этот код в режим использования для ComboBox, но мои навыки VBA, безусловно, тусклые.
То, что я до сих пор
Private Sub form_load()
Dim lastRow As Integer
Dim cellName As Integer
Dim match As Boolean
lastRow = Sheets(1).Range("F2").End(xlDown).Row
For i = 2 To lastRow
match = False
cellName = .Sheets(1).Range("F" & i).Value
For _________________
ComboBox1.AddItem i
End Sub
Вы заметите, что в этом примере я связан, они используют код
For Each ws In ActiveWorkbook.Worksheets
If ws.Name = sheetName Then
match = True
End If
Next
, чтобы определить, если ячейка уже использовалась в качестве имя листа. Тем не менее, я не достаточно знаком с VBA, чтобы узнать, существует ли дополнительная команда для проверки значений в combobox.
Нет, вам придется петлю снова, чтобы проверить и установить логическое значение, чтобы знать, если у вас уже есть или нет! Или вы можете использовать dictionnary: http://www.snb-vba.eu/VBA_Dictionary_en.html – R3uK
Вы хотите поместить ящики в UserForm или просто на листе? –
@ScottHoltzman Моя конечная цель состоит в том, чтобы этот комбинированный блок мог выбрать опцию, а затем применить определенный фильтр к ~ 15 сводным таблицам одновременно. Это лучший способ, который я могу придумать. Если есть лучший способ, я более чем открыт для предложений! – phroureo