Ga naar inhoud

Find methode


Ypsolona

Aanbevolen berichten

(Gebruikt : Windows 7 en Office 2010)

Hallo, wie kan mij helpen?

In een excel datatbase heb ik met 'aangepast sorteren' per kolom een macro gemaakt die sorteert van klein naar groot. De kolom bevat zowel waarden als tekst. Er zijn soms veel gelijke waarden en teksten zodat die netjes verzameld worden in reeksen, die dan mooi elkaar volgens hun waarde opvolgen. Dit werkt perfect.

Mijn vraag nu:

Om het lang en diep naar beneden scrollen te vermijden zou ik graag, aanvullend aan voorgaande, vlug willen zien als een waarde of tekst in die kolom staat, en zo ja de eerste cel van die reeks bereiken.

De gewenste waarde zou ik willen invoeren via een invulvakje.

Kan dit met de 'vind' methode, en hoe doe ik dit dan??

Eeuwige dank...

Link naar reactie
Delen op andere sites

Deze heb ik uit m,n muziek database geplukt, de rode tekst moet je ff aanpassen.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
TestValue = InputBox("[color=#FF0000]Welke song zoek je [/color]?", "Zoeken maar")
Set FoundCell = ActiveSheet.Range("[color=#FF0000]L:L[/color][color=#000000]")[/color][color=#FF0000].[/color]Find(TestValue)
If FoundCell Is Nothing Then
MsgBox "[color=#FF0000]De song is niet gevonden[/color]"
Else
Range(FoundCell.Address).Select
End If
End Sub

Groeten bucky

Link naar reactie
Delen op andere sites

  • 3 weken later...

Ik heb bovenstaande oplossing aangepast om achtereenvolgend alle gelijke waarden te vinden.Dit werkt perfect voor tekst,maar ik zou het nu echter ook graag gebuiken om getallen te vinden. Dit werkt echter niet juist; er wordt geen onderscheid gemaakt tussen negatieven en positieve getallen, en bovendien wordt niet gezocht naar de juiste waarde. Zoeken naar bijvoorbeeld 2, komt terecht bij 0,27; 0.12; 2; 2.6 ...kortom bij elke cel die een 2 bevat. is er een methode om alleen de juiste waarde te vinden en niets anders?

Bedankt voor jullie hulp.

Link naar reactie
Delen op andere sites

Dank bucky voor uw antwoord. Hierbij een model van het ontwerp. Groetjes

Sub Opzoeken()

Dim myKolom As String

Dim myRange As String

Dim Verder As VbMsgBoxResult

'

myRange = ("A1")

myEindpunt = ("A50")

myKolom = ("A:A")

Verder = vbYes

myValue = InputBox("Wat zoek zoek je ?", "Opzoeken van een waarde")

'

Do While Verder = vbYes

Set FoundCell = ActiveSheet.Range(myRange, myEindpunt).Find(myValue)

'

If FoundCell Is Nothing Then

MsgBox "De waarde -> " & myValue & " <- is niet gevonden "

Exit Sub

Else

Range(FoundCell.Address).Select

'

If (FoundCell.Address) = myRange Then

MsgBox "Geen verder waarden gevonden!"""

Exit Sub

End If

'

myRange = (FoundCell.Address)

Verder = MsgBox("Verder zoeken?", vbYesNo)

'

If Verder = vbNo Then

Exit Sub

End If

'

End If

Loop

End Sub

Link naar reactie
Delen op andere sites

Ypsolona,

Ik ben bang dat dat niet gaat, zoek maar eens op 0,27 als die in je kolom staat Excel zal zeggen:

De waarde -> 3,1 <- is niet gevonden. Excel zoekt naar getallen of letters in de cellen, zo gauw er leestekens aan te pas komen weet Excel het helemaal niet meer.

Maar ik ga morgen een poging ondernemen of ik iets op het net kan vinden.

Groet bucky

Link naar reactie
Delen op andere sites

Dank voor uw hulp. Hopelijk is er een oplossing. Excel kan het wel, want als u op de zoekfunctie van EXcel gaat zoeken dus via Tab START- ZOEKEN en SELECTEREN - ZOEKEN - OPTIES - KEUZEVAKJE "Identieke cellen inhoud" aangevinkt, wordt steeds en alleen de juiste waarde gevonden. Spijtig genoeg ken ik de VBA formulering niet hiervan. Op hoop van een oplossing... zoeken we verder. Wie kan er nog helpen??

aangepast door Ypsolona
Link naar reactie
Delen op andere sites

Hey bucky,

Graag hier de oplossing, dan kan ze nog nuttig zijn voor geïnteresseerden:Vul de Find opdracht aan met voorwaarde:

Set FoundCell = ActiveSheet.Range(myRange, myEindpunt).Find(What:=myValue, LookIn:=xlValues, LookAt:=xlWhole)

Groetjes en nog eens bedankt voor uw inzet.

Link naar reactie
Delen op andere sites

Gast
Dit topic is nu gesloten voor nieuwe reacties.
×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.