• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Selectie ongedaan maken listBox

Status
Niet open voor verdere reacties.

don42

Gebruiker
Lid geworden
25 apr 2014
Berichten
800
Hoi experts,

wie kan mij helpen met het volgende:
heb een userform met een listbox (multi-select)
nu had ik graag een knop in UF om mijn selectie te wissen

heb deze code hier op het forum gekregen om de selectie van checboxen te wissen

Code:
Private Sub CommandButton3_Click()
  Dim oCtrl As Control
    For Each oCtrl In Me.Controls
      If TypeOf oCtrl Is msforms.CheckBox Then
        oCtrl.Value = False
      End If
    Next
    CheckBox9 = True
End Sub

zoiets had ik graag om de selectie van ListBox1 te wissen

bvd
Don
 
Dat kan met bijvoorbeeld dit:

Code:
Private Sub CommandButton1_Click()
    Dim x As Integer
    For x = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(x) = True Then
            ListBox1.Selected(x) = False
        End If
    Next
End Sub
 
Dag Ed,

De voorwaarde "If True" kan je laten vervallen. ;)
 
Wellicht dat dat mogelijk is. Ik heb het niet getest maar het kan zijn dat het dan mis gaat als er geen selectie is.

Edit:
Even getest en HSV heeft gelijk. Niet dat ik daar aan twijfelde hoor ;)
Dit is dus voldoende:

Code:
Private Sub CommandButton1_Click()
    Dim x As Integer
    For x = 0 To ListBox1.ListCount - 1
        ListBox1.Selected(x) = False
    Next
End Sub
 
Laatst bewerkt:
Gaat ook goed.
 
Had net m'n post aangepast :)
 
Mijn voorkeur:

Code:
Sub M_snb()
    ListBox1.List = ListBox1.List
End Sub
 
Nog veel simpeler dus. Nog nooit zo gedaan :thumb:
 
hallo allemaal bedankt voor de vele oplossingen ik ben weer geholpen top
 
Laatst bewerkt:
de laatste code van snb krijg ik niet aan de praat
geeft foutmelding 70 !

deze
Code:
Private Sub CommandButton1_Click()
    Dim x As Integer
    For x = 0 To ListBox1.ListCount - 1
        ListBox1.Selected(x) = False
    Next
End Sub

werkt prima
 
Dan vul jij je Listbox vast niet via List.
 
hoi,

bedoel je RowSource en dan in mijn geval 'namen' ( heb de namen geseleteerd en een naam gegeven)
om de lijst te vullen?
dat had ik ergens op het net gevonden
dat kan dus ook anders begrijp ik
de lijst namen staat in tabje chauffeurs kolom A en dan van 2 tot 89
 
Code:
Private Sub Userform_initialize()
   ListBox1.List=sheets("chauffeurs").range("A2:A98").value
End Sub
 
Wel de RowSource leegmaken, anders krijg je weer een ander foutmelding.
 
waar moet ik die code dan zetten, misschien heel dom maar...
 
Waar heeft @snb het geplaatst?
 
Sorry ik had een tabblad met de naam chauffeurs en een spatie!
dat had ik niet meteen door heb het aan de praat
dank jullie
 
Het werkt prima maar ik vroeg mij gelijk weer af als er chf bij komen moet ik de range aan passen

Code:
Private Sub Userform_initialize()
   ListBox1.list = Sheets("chauffeurs ").Range("A2:A98").Value
End Sub

kan dat ook met iets als a2 tot de eerste lege cel
dan is het natuurlijk klaar

don
 
Ja hoor, daarvan kun je in dit forum tig voorbeelden vinden.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan