Excel-VBA: Как удалить элемент списка - PullRequest
0 голосов
/ 28 марта 2020

У меня есть пользовательская форма с одним комбинированным списком, двумя списками и одной командной кнопкой

Мой listbox1 источник данных из моего комбинированного списка

И мой комбинированный список содержит такой код

On Error Resume Next
Dim ws As Worksheet
Dim cPart As Range
Set ws = Worksheets("LookupLists")

Me.ListBox1.Value = ""
Me.ListBox1.RowSource = ""

With ws
   .Range("LocKar").Cells(2, 1).Value _
      = Me.cboLocation.Value
   .Columns("B:D").AdvancedFilter _
      Action:=xlFilterCopy, _
      CriteriaRange:=.Range("LocKar"), _
      CopyToRange:=.Range("ExtLocKar"), _
      Unique:=False
End With

ThisWorkbook.Names.Add Name:="LocKarList", _
  RefersTo:="=" & ws.Name & "!" & _
  ws.Range("LocKarStat").Address

Me.ListBox1.RowSource = "LocKarStat"
End Sub

После внесения изменений в выпадающий список я получаю свой элемент в своем списке1. Я хочу перенести выбранный элемент из списка1 в список2 с помощью кнопки команды, а также хочу удалить выбранный элемент, поэтому элемент отображается только в списке2 * 1009. *

Я использую этот код для своей кнопки команды, но он не работает.

Private Sub CommandButton2_Click()
    Dim iCtr As Long
    For iCtr = 0 To Me.ListBox1.ListCount - 1
        If Me.ListBox1.Selected(iCtr) = True Then
            Me.ListBox2.AddItem Me.ListBox1.List(iCtr)
        End If
    Next iCtr

    For iCtr = Me.ListBox1.ListCount - 1 To 0 Step 1
        If Me.ListBox1.Selected(iCtr) = True Then
            Me.ListBox1.RemoveItem iCtr
        End If
    Next iCtr
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...