Я использовал этот точный код VBA раньше, чем в других списках, чтобы успешно добавить не дубликаты. К сожалению, на этот раз он дает мне ошибку «определенная пользователем или объектная ошибка». Любые идеи по этому поводу очень ценятся, я не уверен, почему он не добавляет элементы в список. Это также список ActiveX, который добавляется на листе вместо пользовательской формы. Я сделал это точно такой же код, прежде чем без проблем, но на этот раз оно ошибки при: rngData.SortФункция VBA. Сортировка для окна списка
Private Sub lstCountry_Click()
Dim wsData As Worksheet
Dim strID As String
Dim rngData As Range
Dim rngCell As Range
Dim shtPivot
Set shtPivot = ThisWorkbook.Worksheets("Pivot")
Set wsData = ThisWorkbook.Worksheets("Raw Data")
Set rngData = wsData.Range("a2").CurrentRegion
lstCountry.Clear
strID = "Select Country"
rngData.Sort key1:=strID, Header:=xlYes
For Each rngCell In rngData.Columns(1).Cells
If rngCell.Value <> strID Then
lstCountry.AddItem rngCell.Value
strID = rngCell.Value
End If
Next rngCell
Прикрепленный скриншот таблицы, я пытаюсь разобраться
этот код будет называть себя в каждом операторе 'lstCountry.AddItem'. кроме того, я не могу понять, что 'strID = rngCell.Value' в цикл' For Each rngCell': какова ваша реальная цель? – user3598756
Моя цель - добавить значения из скриншота, который я только что добавил в список без дубликатов. Я сделал это, прежде чем успешно, только на этот раз я получаю сообщение об ошибке, и я не уверен, почему! – Rosario
, который является списком ActiveX, в который вы хотите обработать? как вы его заполняете в первый раз? – user3598756