• 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.

gegevens filteren in listbox

Status
Niet open voor verdere reacties.

tomkruizinga

Gebruiker
Lid geworden
7 dec 2018
Berichten
21
Hallo,

In bijgevoegd bestand kan men gegevens opzoeken.
"Voorraad opzoeken" {userform3} is al redelijk af, op de listbox1 na.
Wat de bedoeling is, is dat zodra men het artikelnummer ingevuld heeft de gegevens van het tabel ook wordt weergegeven in de listbox.
ofwel alles in het tabel met ingevoerde art nr zou weergegeven moeten worden

Met wat ik al geprobeerd heb krijg ik alles.
In het forum krijg ik wel verschillende manieren gevonden maar krijg het niet voor elkaar om hem in dit bestand goed te krijgen.
Code:
Private Sub ListBox1_Click()
    With Sheets("overvoorraad1")
        TextBox8.Value = ListBox1.List(ListBox1.ListIndex)
        TextBox9.Value = ListBox1.List(ListBox1.ListIndex, 1)
    End With
End Sub

Kan iemand mij hierbij helpen?
Alvast bedankt;
Tom Kruizinga
 

Bijlagen

  • Overvoorraad met besturingselement.xlsm
    682,9 KB · Weergaven: 1.574
wat nou de functie van textbox8 en textbox9 is begrijp ik niet, maar met deze code vul je de listbox op basis van de gekozen waarde in de combobox2

Code:
Private Sub ComboBox2_Change()
ListBox1.Clear
arr = Sheets("Overvoorraad lijst").Cells(1).CurrentRegion
For i = 3 To UBound(arr)
    If arr(i, 1) = ComboBox2.Text Then
        For j = 0 To 9
            ListBox1.AddItem
            ListBox1.List(n, j) = arr(i, j + 1)
        Next
        n = n + 1
    End If
Next
End Sub
 
beste SjonR
Snap even niet veel van de formule, maar daar kijk ik later wel na.
Is het in deze code mogelijk om de rest van de tabelgegevens ook weer te geven.
In ieder geval omschrijving|loc boven|tht|aantal

groet;
 
Ik was nog vergeten te vermelden dat je de columncount van de listbox even op 10 moet zetten. doet het dan wat je bedoelt?
 
Laatst bewerkt:
Zet het in een array en vul dan de listbox op het eind; hoef je het ook niet leeg te maken met clear.
Code:
Private Sub ComboBox2_Change()
arr = Sheets("Overvoorraad lijst").ListObjects(1).DataBodyRange
ReDim sv(9, 0)
For i = 3 To UBound(arr)
    If arr(i, 1) = ComboBox2.Text Then
        For j = 0 To 9
            sv(j, UBound(sv, 2)) = arr(i, j + 1)
        Next
     ReDim Preserve sv(9, UBound(sv, 2) + 1)
    End If
Next
ListBox1.List = Application.Transpose(sv)
End Sub

En kijk eens naar de dictionary methode om geen duplicaten te hebben in combobox2.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan