Проблема с предотвращением дублирования в списке - PullRequest
0 голосов
/ 07 ноября 2019

У меня возникают проблемы, препятствующие добавлению дубликатов в список в Excel. У меня есть два списка, lstBoxSurveyList и lstBoxSurveyRemove. Я пытаюсь добавить элементы из lstBoxSurveyList, но только если его еще нет в lstBoxSurveyRemove. Мой код ниже (только что отредактировал). Какие-либо предложения? Я вижу некоторые сообщения на VB.Net, но они не работают в Excel.

    Dim i As Integer

    For i = 0 To lstBoxSurveyRemove.ListCount - 1
        If lstBoxSurveyRemove.List(i) = lstBoxSurveyList.Value Then
            MsgBox ("This value exists")
        Else
            lstBoxSurveyRemove.AddItem (lstBoxSurveyList.Value)
        End If

    Next i

1 Ответ

1 голос
/ 07 ноября 2019

Вам нужно подождать, пока вы закончите цикл, прежде чем добавить элемент, в противном случае вы просто проверяете соответствие первого элемента.

Примерно так:

Dim i As Long, bFound As Boolean

For i = 0 To lstBoxSurveyRemove.ListCount - 1
    If lstBoxSurveyRemove.List(i) = lstBoxSurveyList.Value Then
        bFound = True
        Exit For
    End If
Next i
If Not bFound Then lstBoxSurveyRemove.AddItem lstBoxSurveyList.Value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...