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

Zoeken binnen een range

Status
Niet open voor verdere reacties.

HarryBee

Gebruiker
Lid geworden
8 jul 2008
Berichten
240
Experts,

Het lijkt eenvoudig maar ik loop toch vast. Mijn bestand loopt van rij 1 t/m 5000 en van kolom A t/m DM. Door middel van een textbox zoek ik naar een willekeurige waarde. Alleen zoekt excel volgens mij alle beschikbare cellen af. En dat duurt veeeel te langggg.

Heeft iemand een stukje code waarmee dit te versnellen is en alleen in een opgegeven bereik zoekt. Op dit moment zijn alleen de rijen 3 t/m 1175 gevuld maar wordt dagelijks aangevuld.

Alvast bedankt.

Groeten Harry
 
Code:
Door middel van een textbox zoek ik naar een [I]willekeurige[/I] waarde
.

Geen wonder dat dat lang duurt. Het gaat al veel vlotter als je naar een bepaalde waarde zoekt.
 
Laatst bewerkt:
Het snelste is de Find methode programmeren. In de helpfiles staat al uitgewerkte code, en ook op dit forum komt dat heel vaak voor.
 
Code:
Door middel van een textbox zoek ik naar een [I]willekeurige[/I] waarde
.

Geen wonder dat dat lang duurt. Het gaat al veel vlotter als je naar een bepaalde waarde zoekt.

He He, ik bedoel natuurlijk dat ik in de textbox een bepaald zoekwoord of nummer zet.
Snappie?:D

Groet Harry
 
Bestudeer de Find in VBA maar eens.

Hallo Wim.

Het is misschien raar, maar als ik op Find zoek krijg ik alleen "Search folders collection" En daar staat dus niet in wat ik vraag.

Groeten Harry
 
Code:
Sheets(1).usedrange.find "zoektekst",,xlvalues,xlwhole
 
Code:
Sheets(1).usedrange.find "zoektekst",,xlvalues,xlwhole

Snb,

Ik doe het nu zo:

Code:
Private Sub Opdrachtknop1_Click()

    With ActiveSheet
        
        .AutoFilterMode = False
        .Range("E2").AutoFilter

        With .AutoFilter.Range

            If TextBox14.Value <> "" Then
                .AutoFilter Field:=2, Criteria1:="*" & TextBox14.Value & "*"
            End If
            
            If TextBox13.Value <> "" Then
                .AutoFilter Field:=4, Criteria1:="*" & TextBox13.Value & "*"
            End If
            
            If TextBox12.Value <> "" Then
                .AutoFilter Field:=13, Criteria1:="*" & TextBox12.Value & "*"
            End If
            
                       
        End With

    End With

End Sub

Misschien is dat het probleem???

Groet Harry
 
Zet evt. berekeningswijze nog tijdelijk op manueel, dat helpt vaak.
 
Mij is niet duidelijk waar je wil zoeken.
Een autofilter op 1 cel lijkt me wel gewaagd, doch niet effektief.

Als je in kolom B wil zoeken als textBox14 niet leeg is
In kolom D met een gevulde textbox13
In kolom M met een gevulde textbox12

Code:
Sub hooiberg()
if textbox14.value<>"" then columns(2).find textbox14.text,,xlvalues,xlPart
if textbox13.value<>"" then columns(4).find textbox13.text,,xlvalues,xlPart
if textbox12.value<>"" then columns(13).find textbox12.Text,,xlvalues,xlPart
End Sub
 
Mij is niet duidelijk waar je wil zoeken.
Een autofilter op 1 cel lijkt me wel gewaagd, doch niet effektief.

Als je in kolom B wil zoeken als textBox14 niet leeg is
In kolom D met een gevulde textbox13
In kolom M met een gevulde textbox12

Code:
Sub hooiberg()
if textbox14.value<>"" then columns(2).find textbox14.text,,xlvalues,xlPart
if textbox13.value<>"" then columns(4).find textbox13.text,,xlvalues,xlPart
if textbox12.value<>"" then columns(13).find textbox12.Text,,xlvalues,xlPart
End Sub

Snb,

Door een willekeurig stukje van een zoekvraag in een textbox te zetten, bijvoorbeeld een stukje van een omschrijving: "Water" en daarna op OK drukken, dan zal als resultaat alle rijen getoond moeten worden die het woord "Water" bevat. In dit geval is de omschijving te vinden in kolom 13.

Groeten Harry
 
Snb,

Door een willekeurig stukje van een zoekvraag in een textbox te zetten, bijvoorbeeld een stukje van een omschrijving: "Water" en daarna op OK drukken, dan zal als resultaat alle rijen getoond moeten worden die het woord "Water" bevat. In dit geval is de omschijving te vinden in kolom 13.

Groeten Harry

Hoi Harry,

Dit kan ook zonder VBA en zonder textbox.

Hoop dat je dit bedoeld. (zie bijlage)
Misschien sla ik de plank wel mis (niet geschoten is altijd mis). :)
 

Bijlagen

Hoi Harry,

Dit kan ook zonder VBA en zonder textbox.

Hoop dat je dit bedoeld. (zie bijlage)
Misschien sla ik de plank wel mis (niet geschoten is altijd mis). :)

Hoi Harry,

Het is denk ik wel bruikbaar, maar hoe laat ik nu op een ander blad, de volledige regels zien waarin het zoekwoord of getal voorkomt? En als een kolom nu een hyperlink bevat, lukt het op deze manier dan ook nog? Ik moet wel toegeven dat dit snel werkt.
Tot zover bedankt voor je inzet. :thumb:

Groeten Harry
 
Hoi Harry,

hierbij het bestandje verwijzend naar een ander blad, met de volledige regels.

Misschien kun je er iets mee.
 

Bijlagen

Hoi Harry,

hierbij het bestandje verwijzend naar een ander blad, met de volledige regels.

Misschien kun je er iets mee.

Harry,

Sorry dat ik niet reageerde. :o Ik was inmiddels alweer met een ander probleem bezig en had mijn probleem mede door jouw formules opgelost.
Ik zit nog wel met een paar dingen, maar dat komt later wel.

Bedankt voor je hulp.:thumb:

Groeten Harry
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan