marloes72
Gebruiker
- Lid geworden
- 23 apr 2007
- Berichten
- 333
Ik heb een userform gemaakt voor beheren van een kerkbijdrage database in excel. Dat is beste een projectje als je niet zoveel ervaring hebt met vba. Ik geloof dat het aardig gelukt is. Maar met de zoekfunctie ben ik niet blij. Ik wil graag dat je op de achternaam (of een deel daarvan!) kunt zoeken, ongeacht gebruik van hoofdletters e.d. En dat daarna het eerste gevonden record laadt in de velden van het userform. Eventueel kan ik daarna nog verder zoeken of terug zoeken toevoegen. Maar het lijkt me handig wanneer dan het eerste deel werkt . Ik krijg nu alleen maar steeds "Niet gevonden" als ik zoek naar een naam die er, zeker weten, wèl in staat!
Met de normale zoekfunctie moet je exact intypen wat er in de cel staat, anders wordt het record niet gevonden. Die bleek dus niet geschikt. Dus heb ik nu de find functie geprobeerd erin te zetten. Maar die werkt voor geen meter. Ik heb het vast verkeerd gedaan. Hopelijk weet iemand wat er fout is en/of hoe ik wèl een goede (deelwaarde) zoekfunctie kan maken.
Met de normale zoekfunctie moet je exact intypen wat er in de cel staat, anders wordt het record niet gevonden. Die bleek dus niet geschikt. Dus heb ik nu de find functie geprobeerd erin te zetten. Maar die werkt voor geen meter. Ik heb het vast verkeerd gedaan. Hopelijk weet iemand wat er fout is en/of hoe ik wèl een goede (deelwaarde) zoekfunctie kan maken.
Code:
Private Sub CMBzoeken01_Click()
Dim zoeken As String
zoeken = TBXzoeken01.Value
currentrow = 4
If zoeken = "" Then
MsgBox "zoekveld is leeg"
Exit Sub
End If
If zoeken <> "" Then
With Sheets("gegevens")
rij = .range("C:C" & .range("C" & Rows.Count).End(xlUp).Row).Find(What:=zoeken, _
LookIn:=xlValues, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False).Row
If rij = 0 Then
MsgBox "achternaam niet gevonden"
Else
.range("C:C" & .range("C" & Rows.Count).End(xlUp).Row).Find(What:=zoeken, _
LookIn:=xlValues, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False).Select
End If
End With
End If
End Sub
Laatst bewerkt: