Zoeken naar twee waardes

Status
Niet open voor verdere reacties.

bspeedy

Gebruiker
Lid geworden
13 okt 2007
Berichten
12
Ik zit met het volgende probleem. Mijn zoekfunctie werkt als een trein. Hierbij kan ik zoeken naar 1 invul text (TexBox1.Value). Nu wil ik echter een twee constraint toevoegen, waarbij er een exacte match moet zijn (TextBox2.Value)

Code:
Private Sub CommandButton1_Click()
  
    Dim SearchString
   
    SearchString = TextBox1.Value
    
    With Sheets("Data").Range("B:B")
    Set f = .Find(SearchString, MatchCase:=True, LookAt:=xlWhole, LookIn:=xlValues)
                        
            If Not f Is Nothing Then
            
                If f.Offset(, 8) >= f.Offset(, 7) Then
                f.Offset(, 9) = f.Offset(, 9).Value + 1
                Else:
                f.Offset(, 8) = f.Offset(, 8).Value + 1
                
                f.Offset(, 10) = f.Offset(, 8).Value * f.Offset(, 6).Value
                End If
                
                Else:
                MsgBox ("Er is geen lead gevonden met het betreffende Lead Nummer")
                End If
               
    
    End With

Ik heb gekeken naar .FindNext, maar ik krijg dit commando niet werkend. Hoe kan ik zorgen dat hij zoekt naar de combinatie TextBox1.Value en TextBox2.Value? Dus bijvoorbeeld waar de case Textbox 1 = 123123 en Texbox 2 = 41 is
 
Laatst bewerkt:
Mijn oplossing is mogelijke omslachtig maar werkt wel:
Code:
Public Sub SearchForLeads()
    Dim f, g
    Dim LastAddress
    Dim SearchString1
    Dim SearchString2
    Dim myRange1 As Range
    Dim myRange2 As Range
   
    'Eerste zoekopdracht
    SearchString1 = Range("A10").Value 

    'Tweede zoekopdracht
    SearchString2 = Range("A11").Value 
    
    Set myRange1 = Sheets("Sheet2").Range("A1:A4")
    'Vind eerste zoekopdracht
    Set f = myRange1.Find(SearchString1, MatchCase:=True, LookAt:=xlPart, LookIn:=xlValues)
    
    'Indien eerste zoekopdracht gevonden, dan...
    If Not f Is Nothing Then
        Do
            Set myRange2 = Sheets("Sheet2").Range(f.Address)
            'Vind tweede zoekopdracht
            Set g = myRange2.Find(SearchString2, MatchCase:=True, LookAt:=xlPart, LookIn:=xlValues)
            'Indien ook tweede zoekopdracht gevonden, dan zijn we klaar
            If Not g Is Nothing Then
                g.Activate
                Exit Sub

            'Zoek anders naar de volgende cell die voldoet aan de eerste zoekopdracht...
            Else
                LastAddress = f.Address
                Set f = myRange1.FindNext(f)
            End If

        'Stop wanneer we geen volgende match vinden.
        Loop While Not f Is Nothing And f.Address <> LastAddress
    End If
    'Er is geen lead gevonden...
    MsgBox "Er is geen lead gevonden met het betreffende Lead Nummer"

End Sub
 
Ga naar onderstaande site. Daar staan voorbeelden hoe je op meerdere criteria kunt zoeken. Ga in het menu naar "Gemak" en vervolgens naar de optie "Zoeken".

http://www.accesspower.nl/

mvg
Charles
 
Heb t nu aangepast met een autofilter.
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=TextBox1.Value
Selection.AutoFilter Field:=7, Criteria1:=TextBox2.Value

Hierdoor selecteer ik alleen de velden die van toepassing zijn. Werkt perfect dus :)

thanx iig voor de help
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan