Toon posts:

[Excel VBA] zoekfunctie (FIND)

Pagina: 1
Acties:
  • 692 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik wil een macro schrijven die voor mij een waarde vindt uit een lijst door een waarde uit een cel te halen.
Ik heb de volgende macro geschreven:


Dim mijntekst As String
mijntekst = Range("waarde").Value


Cells.Find(What:="mijntekst", After:=ActiveCell, LookIn:=xlComments _
, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate


Als ik deze uitvoer krijg ik de volgende foutmelding:

Fout 91 tijdens uitvoering

Objectvariabele of blokvariabele with is niet ingesteld.

Ik zie niet wat fout is gegaan omdat het stuk Cells.find.......... gewoon uit de macrorecorder komt.

Verwijderd

Ik denk dat als Find niets vind, hij ook geen geldig range-object oplevert.
Het beste kun je het resultaat van FInd in een variabele zetten, deze controleren ( IsNothing ) en dan pas de activate doen.

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 11:35
Deze macro zou al vastlopen op de regel
mijntekst = Range("waarde").Value
Probeer eens:
mijntekst = Range("A1").Value
Of zo

  • Dragonator
  • Registratie: Juni 2001
  • Laatst online: 22-08 18:32
Hallo,

Dit is geen kick, maar ik ben beniewd wat de oplossing was van dit probleem. Ik heb exact hetzelfde probleem namelijk. Ik ben bezig met een cursus VBA voor Excel en bij de volgende code krijg ik ook deze fout:

Sub MaandenVerbergen()
Dim mijnVondst As Range
Set mijnVondst = Rows(1).Find(What:="1-5-2005", _
After:=Cells(1), _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlNext, _
MatchCase:=False, _
SearchFormat:=False)
Range("C1", mijnVondst.Offset(0, -1)).EntireColumn.Hidden = True
End Sub

Kan iemand mij hier mee helpen. Ik werk met Excel XP als dat nog van belang is.