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

uitgebreid zoeken

Status
Niet open voor verdere reacties.

popipipo

Meubilair
Lid geworden
21 nov 2006
Berichten
8.436
Bijgaand bestand wil ik verder uitbreiden.
Nu kan hij op kolom C zoeken op een gedeelte van de naam.
Om de lijst nog verder in te korten wil ik ook, op gelijk wijze, kunnen zoeken op de overige kolommen.

Eventueel mag dit ook via een validatielijst, dus in validiatie lijst eerst kolom A kiezen daarna bv kolom C enz totdat er een kleine overzichtelijke lijst overblijft.
 

Bijlagen

  • test zoeken op gedeelte van de naam.xls
    40,5 KB · Weergaven: 61
Probeer deze versie eens Willem.
Alleen kolom D & E werken niet (misschien zijn deze kolommen ooit opgemaakt als tekst).
 

Bijlagen

  • popipipo.xls
    46,5 KB · Weergaven: 55
Hallo Harry,

Werkt dus bijna perfect.
Heb dus nog even naar Kolom D & E gekeken.
Met een zoekopdracht van getallen gaat het altijd mis.
Tenzij er in de cel slechts 1 getal staat.
Moet even verder kijken of dit nog belangrijk is of niet.

Het bestand moet een zoekfunctie worden voor telefoonnummers en namen.
Naam ingeven krijg je dus wel telefoonnummer.
Maar telefoonnummer in geven krijg je dus geen naam.

Mocht jij (of iemand anders) nog een oplossing voor het probleem heeft dan hoor ik het graag.
 
Beste Willem,

zelf heb ik de 2007 versie.

als ik in rij 1 het telefoonnummer invoer, wordt de gehele rij getoond.

dit is het bestandje van Harry (HSV).

wat gaat er volgens jou nog niet goed?
 

Bijlagen

  • popipipo (oeldere).xls
    45 KB · Weergaven: 36
OK bij een volledig tel.nr werkt het wel.
Maar als je een gedeelte van het telefoon nr ingeeft werkt het niet.
Daarentegen bij een gedeelte van de naam werkt het wel
Dus er zit nog een klein verschil in.
 
Code:
Else                                                                   'anders
Ok, popipipo, dat is ook duidelijk:p

       .AutoFilter Field:=i, Criteria1:="=" & "*" & rFilter.Offset(-2, i - 1).Value & "*" 'filter op tekst
       End If

door de asterix in de code wordt bij filteren op naam alles gevonden met een bepaald letter (denk ik).

A => abeltje, anna, maar ook danny.

je zou toch zeggen dat je toch ook op de 1e letter alleen zou kunnen zoeken.

zelf ben ik (nog) niet zo'n VBA'-er.
 
Code:
Private Sub Worksheet_Change(ByVal Target As Range)

  Dim rGewensteFilters As Range, rFilter As Range, c As Range
    Dim i As Integer, iKolom As Integer
      ActiveSheet.Unprotect
  Set rGewensteFilters = Range("A1:J10000")                                               'dit zijn de cellen waarmee je bepaalde kolommen wil filteren
  Set rFilter = Range("A4")                                                               'dit is de 1e cel van je gegevens, dus linksboven
    If Intersect(Target, rGewensteFilters) Is Nothing Then Exit Sub                       'heb je net iets veranderd in je gewenste filtervelden ? zoniet stop hier
       iKolom = rGewensteFilters.Columns.Count                                            'uit hoeveel velden bestaat je filter ?
     ActiveSheet.AutoFilterMode = False                                                   'even de ganse filter terug uit zetten
  With rFilter.CurrentRegion                                                              'dit is ons gegevensbereik
    For i = 1 To iKolom                                                                   'voor iedere kolom in je gegevens
     If Not IsEmpty(rFilter.Offset(-2, i - 1)) Then                                       'wil je iets filteren in deze kolom ?
      If IsNumeric(rFilter.Offset(-2, i - 1)) Then                                        'als het een getal is dan
       [COLOR="red"].AutoFilter Field:=i, Criteria1:="=" & rFilter.Offset(-2, i - 1).Value             'filter op getal"[/COLOR]
      Else                                                                                'anders
       .AutoFilter Field:=i, Criteria1:="=" & "*" & rFilter.Offset(-2, i - 1).Value & "*" 'filter op tekst
       End If
      End If
    Next
  End With
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True


End Sub

Bij filter op getal staat de astrix er niet :p :p

Erbij gezet en het loopt als een trein.
 
popipipo,

hoe is jouw code dan geworden (ik krijg hem niet werkend).

zelf werk in met excel 2007.

wat is jouw versie?
 
Er zit iets vreemds in het originele bestandje.

Hier mijn uitgeklede bestand.
Daar werkt het wel.
 

Bijlagen

  • Adreslijst.xls
    47,5 KB · Weergaven: 80
met het nieuwe bestandje lukt het bij mij ook.

bedankt voor het reageren.
 
Ik heb geen idee.

Ik had zowel voor als achter een asterix geplaatst in het eerste bestandje, maar maakte geen verschil.
Doch één verschil; kolom A werkte ook niet meer.

Ik heb al meerder bestandjes zo gemaakt en het werkte feilloos door de Isnummeric, vandaar mijn opmerking.

Mooi dat het werkt in je origineel. :thumb:
 
hallo Popipipo,

ik heb je bijlage geopend, en ik wil deze functie ook in een database gebruiken.
(nou is mijn vraag hoe je de zoekfunctie hebt ingebouwd, ik kan namelijk geen formules vinden in je bestand.)
ik heb even gepuzzeld, en ik heb het voor elkaar gekregen, volgende probleem: het filter gaat niet weg als ik de cel weer leeg haal. is hier ook een oplossing voor? ik heb namelijk de hele code gekopieerd, en veel verder gaat mijn kennis van deze codes ook niet.
bvd


Gastje88
 
Laatst bewerkt:
Vraag is "out of date". Graag een nieuwe vraag maken.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan