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

autofilter met getal als tekst en wildcard

Status
Niet open voor verdere reacties.

Ruudvansch

Gebruiker
Lid geworden
24 feb 2008
Berichten
13
Op een werkblad heb ik in een kolom verschillende getallen (meerdere cijfers per getal, bv '2008023'). In deze kolom maak ik een selectie met autofilter. Dat werkt.
De bedoeling is, dat deze kolom gevuld wordt via een formulier (met een textbox), de cellen hebben de eigenschap 'tekst' en de getallen zijn feitelijk een string.

Autofilter laten zoeken op het getal werkt ook; '2008023' invoeren geeft de juiste rij.
Dit wil ik toepassen met een wildcard. Dat kan ook via autofilter > aangepast filter > 'bevat'. Maar uiteindelijk wil ik vanuit VBA macro het autofilter aansturen met een wildcard vóór EN ná het te zoeken deel uit de string (die dus wel uit een of meer cijfers bestaat), dus bv.: '802' zoeken moet ook 2008023 vinden.

In de code hieronder en (als het lukt om bij te voegen) in het bestand in de bijlage zou dit moeten werken, maar dat doet het dus niet. Als de rijen alleen strings met letters zijn, werkt het wel.

Private Sub TextBox2_Change()
With Range("B6:B16")
.AutoFilter
krit = "*" + TextBox2.Value + "*"
.AutoFilter Field:=1, Criteria1:=krit
End With
End Sub

Wie weet hoe het dit werkend te krijgen met getallen?
 

Bijlagen

Dag Ruud

Ik denk dat dat inderdaad niet kan. Zie ook: http://www.mrexcel.com/forum/showthread.php?t=342268

Wim,

Dank in elk geval voor je snelle reactie.
Ik had blijkbaar nog niet alle fora afgezocht ...

Is het niet vreemd als dat niet zou kunnen? Wat is een karakter (0..9) nu eenmaal anders dan een (a..z of A .. Z)?

Zou er niet een manier zijn. Zoiets als met de ~ (tilde) als je '*' zoekt. Of een omweg door de string voor 'criteria' samen te stellen uit chr-codes of zo?

Of is (bijna) hetzelfde op een andere manier misschien te bereiken?

Uiteindelijk lukt het natuurlijk altijd wel met VBA-code, maar dat wordt even doorprogrammeren (rij 1 -> wat staat er in de cel -> komt in de string het gezochte deel voor -> zo ja zet in de kolom ernaast een 'x' (LETTER!) -> volgende rij enz.) en dan het autofilter op de kolom met af en toe een 'x' uitvoeren. Het resultaat is hetzelfde. Maar dat zou toch makkelijker moeten kunnen.

Groet,
Ruud
 
Je kan idd in een extra kolom met een functie kijken of het getal het te zoeken getal bevat, en dan op doe kolom filteren.

Wigi
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan