• 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 met find

Status
Niet open voor verdere reacties.

taktix

Gebruiker
Lid geworden
15 apr 2007
Berichten
61
Hoi,

Kan je met find ook zoeken naar een cel ipv een bepaalde tekst?

Bedankt!
 
Wat bedoel je precies zoeken naar een cel?
Je kunt op waarden zoeken of op formules, als je beschikt over 2003 en hoger kun je uitgebreid zoeken dan worden de cellen van de zoekactie ook weergegeven.
 
Ik wil zoeken naar de waarde in een cel, maar die waarde kan variëren. Hoe geef ik dit dan aan?
 
Kun je misschien een VB bestandje uploaden dan kijk ik er vanavond naar.
Waarschijnlijk wil je een oplossing die niet met find op te lossen is.
 
Dankje. Ik heb 1 Voorbeeldbestand. Dat is het algemene formulier. En ik heb meerdere bestanden (bijv. Appels, peren e.d.) Nu wil ik dat als je op de macro klikt het bestand appels.xlsx opent en daar het jaartal opzoekt uit het voorbeeldbestand (cel K1) en daar achter het juiste jaar (voor 2012 achter 2011-2012) neerzet.

Bedankt alvast!
 

Bijlagen

  • Voorbeeld.xlsm
    99,4 KB · Weergaven: 32
  • Appels.xlsx
    8,5 KB · Weergaven: 25
Volgens mij kun je met find alleen op strings zoeken. Geen idee hoe het wel moet overigens. Sorry.
 
Sorry ikbegrijp het nog niet helemaal.
1 bestand appels openen
2 zoek in kolom C naar juiste jaar van voorbeeld bestand
3 plakken in kolom d in de juiste rij

Is dit wat je bedoeld?

Als het zoiets is moet het wel lukken met een macro.
 
Ik weet niet wat er achter het juiste jaartal moet, maar heb eerst maar even cl gedaan.
Verander de jaartallen in kolom B van 'appels', 'peren' enz. in echte jaartallen.
Dus verwijder de '-'.

Verander zo nodig in de code het pad waar de bestanden staan.
Code:
Sub tst()
 Dim cl As Range, rij As Integer
  With Sheets("Blad1")
   For Each cl In .Range("B5:B" & .Cells(.Rows.Count, 2).End(xlUp).Row)
    Application.ScreenUpdating = False
      Workbooks.Open ("C:\Documents and Settings\New user\Bureaublad\" & cl & ".xlsx")
  With Workbooks(cl & ".xlsx").Sheets("Blad1")
    rij = WorksheetFunction.Match(ThisWorkbook.Sheets("Blad1").Range("K1"), .Range("B1:B10"), 0)
       .Cells(rij, 4) = cl
      End With
     Workbooks(cl & ".xlsx").Close SaveChanges:=True
    Next cl
   End With
 Application.ScreenUpdating = True
End Sub
 
Dat is een hele mooie oplossing! Bedankt voor de duidelijke uitleg. Alleen wil ik de waarde uit de kolom gewicht achter het juiste jaartal. Is dit ook mogelijk. Ik kom er zelf niet uit. Bedankt!
 
Vul de rode tekst even aan.
Code:
.Cells(rij, 4) = cl[COLOR="red"].Offset(, 3)[/COLOR]
 
He hier heb ik ook een hoop aan. Heb ik toch nog 1 vraag. Kun je met deze methode ook een heel bereik (bijv. C4:E8) in 1 keer plakken? Ik heb dan geen loop nodig. Er hoeft alleen een bestand geopend te worden en daarin op datum een bereik te worden geplakt.

Bedankt!
 
Kim,

Ik heb het Hier neer gezet.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan