Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Mehrere selektierte Einträge aus einer Listbox entfernen

Anleitung Entwicklung VB for Applications

Mitglied: misterdemeanor

misterdemeanor (Level 1) - Jetzt verbinden

22.03.2006 um 15:27 Uhr, 17332 Aufrufe

Applies To : VBA Listbox (RowsourceType=Valuelist)
Office XP

Eben gerade wollte ich mehrere selektierte Einträge aus einer Listbox in eine andere Listbox übertragen, und die selektierten Einträge aus der "source"-Listbox entfernen.
Mittels der Listbox.RemoveItem-Function sollte das ja auch kein Problem sein. Sollte man meinen...

Jaja, aber wer VBA kennt, der mag da schon etwas skeptisch sein, zurecht

Tatsächlich ist es so das die Listbox.ItemsSelected.Count-Property nach erstmaligen Aufruf der Listbox.RemoveItem-Function auf 0 gesetzt wird.(!!) Nachdem ich nach kurzem googlen zwar auf dieses "Phänomen" gestoßen bin, allerdings keine Lösungsansätze fand, hab ich dieses kleine Problemchen halt selbst gelöst.
Die kleine Sub entfernt die Selektierten-Einträge aus der der Sub übergebenden Listbox:

01.
 Public Sub removeSelectedItemsFromListbox(ByVal c As Access.ListBox) 
02.
On Error GoTo errHandler 
03.
  Dim i As Integer 
04.
  Dim chosen() As Long 
05.
  Dim l As Long 
06.
  l = 0 
07.
    ReDim chosen(0 To c.ItemsSelected.Count - 1) 
08.
    For i = 0 To c.ListCount - 1 
09.
      If c.Selected(i) Then 
10.
        chosen(l) = c.Column(c.BoundColumn - 1, i) 
11.
        l = l + 1 
12.
      End If 
13.
    Next i 
14.
     
15.
    For i = 0 To UBound(chosen) 
16.
      For l = 0 To c.ListCount - 1 
17.
        If c.ItemData(l) = chosen(i) Then 
18.
          c.RemoveItem l 
19.
        End If 
20.
      Next l 
21.
    Next i 
22.
errHandler: 
23.
  Select Case Err.Number 
24.
    Case 0 
25.
    Case 9  'Array-Index Out Of Bounce 
26.
      Exit Sub 
27.
    Case 6014 'Listbox.RowSourceType is not Valuelist 
28.
      Exit Sub 
29.
    Case Else 
30.
      MsgBox Err.Number & vbNewLine & Err.Description, vbCritical, "removeSelectedItemsFromListbox" 
31.
      Exit Sub 
32.
  End Select 
33.
End Sub 
34.
 
Ähnliche Inhalte
Windows Server
DNS Windows Server 2008R2 alte DNS Einträge löschen lassen (3)

Frage von WinLiCLI zum Thema Windows Server ...

Datenbanken
gelöst MSSQL Datenkonvertierung 1 Zeile auf mehrere Zeilen - bitte um Tips (4)

Frage von highmoe zum Thema Datenbanken ...

E-Mail
PTR (Reverse DNS) - Einträge (8)

Frage von tigernrw zum Thema E-Mail ...

Neue Wissensbeiträge
Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(2)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Viren und Trojaner

Neue Magazin Ausgabe: Malware und Angriffe abwehren

Information von Frank zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Windows Systemdateien
Warum System auf "C:" (29)

Frage von DzumoPRO zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Cisco SG200: Auf bestimmtem vLAN bestimmte TCP-Ports sperren (16)

Frage von SarekHL zum Thema LAN, WAN, Wireless ...

Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Cloud-Dienste
gelöst Bitcoins minen über Nacht? (16)

Frage von 1410640014 zum Thema Cloud-Dienste ...