• 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 naar cel waarde

Status
Niet open voor verdere reacties.

don42

Gebruiker
Lid geworden
25 apr 2014
Berichten
800
Hallo Allemaal,

Ik ben op zoek naar het volgende:

Zoeken in Kolom P van celP1 tot cel P200 naar het woord "Gestopt"
als dat gevonden wordt
een MsgBox met de waarde van cel Kolom B
(als voorbeeld "gestopt"wordt gevonden op P16 dan de waarde van B16 tonen = een getal
bij 'nee'(vbNo) door naar een eventuele volgende "Gestopt"
Bij Ja (vbYes) naar het tabblad (de waarde van kolom B is gelijk aan tabblad naam)
stel dat het getal in B16 de waarde 23 heeft zal bij vbYes naar het tabblad moeten dat 23 heet
en als mogelijk een mooie afsluiter met "geen gegevens gevonden"
dit bericht zou tevens ook gebruikt kunnen worden als het woord gestopt helemaal niet voor zou komen in kolom P



Hoop dat iemand op deze warme dag
een oplossing heeft voor bovenstaande

Don
 
Laatst bewerkt:
Er moet toch wel iemand zij die mij een stapje verder kan helpen

Zoeken in Kolom P van celP1 tot cel P200 naar het woord "Gestopt"
als dat gevonden wordt
een MsgBox met de waarde van cel Kolom B
(als voorbeeld "gestopt"wordt gevonden op P16 dan de waarde van B16 tonen = een getal
bij 'nee'(vbNo) door naar een eventuele volgende "Gestopt"
Bij Ja (vbYes) naar het tabblad (de waarde van kolom B is gelijk aan tabblad naam)
stel dat het getal in B16 de waarde 23 heeft zal bij vbYes naar het tabblad moeten dat 23 heet
en als mogelijk een mooie afsluiter met "geen gegevens gevonden"
dit bericht zou tevens ook gebruikt kunnen worden als het woord gestopt helemaal niet voor zou komen in kolom P


BVD

Don
 
Laatst bewerkt:
Test het maar eens.
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim c As Range
If Target.Address(0, 0) = "D6" Then
  Set c = Sheets("leden").Columns(5).Find("gestopt")
    If Not c Is Nothing Then
     If MsgBox(c.Offset(, -4).Value, vbYesNo) = vbYes Then
       'application.goto sheets(c.offset(,-4)).range("A1") 'hiermee ga je naar het blad van de gevonden cel van kolom A die nu nog niet aanwezig is.
     Else
   Do
     Set c = Sheets("leden").Columns(5).FindNext(c)
   Loop While MsgBox(c.Offset(, -4), vbYesNo) = vbNo
      End If
    Else
       MsgBox "geen gegevens gevonden"
   End If
 End If
End Sub
 
Nog net niet

Hoi bedankt voor je reactie,
heb het getest
wat gebeurd, als ik op 'Nee' klik blijft het rond gaan de 2 (in mijn voorbeeld) tussen 4 en 15
het stopt niet met "geen gegevens gevonden"
als ik bij de eerste op ja klik gaat hij naar een tabblad 2 nummers lager! nu staat het getal in kolom A op 4 gaat hij naar tabblad 2 maak ik er 11 van gaat hij naar tabblad 9
de volgende stop reageert nergens meer op
Ook als ik dan doorklik en weer op de eerst gevonden "gestopt"kom gaat hij niet naar een ander tabblad!



Bekijk bijlage sorteren-2.xlsm

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim c As Range
If Target.Address(0, 0) = "D6" Then
  Set c = Sheets("leden").Columns(5).Find("gestopt")
    If Not c Is Nothing Then
     If MsgBox(c.Offset(, -4).Value, vbYesNo) = vbYes Then
       Application.Goto Sheets(c.Offset(, -4)).Range("A1") 'hiermee ga je naar het blad van de gevonden cel van kolom A die nu nog niet aanwezig is.
     Else
   Do
     Set c = Sheets("leden").Columns(5).FindNext(c)
   Loop While MsgBox(c.Offset(, -4), vbYesNo) = vbNo
      End If
    Else
       MsgBox "geen gegevens gevonden"
  
   End If
 End If
End Sub

Don
 
Laatst bewerkt:
Nieuwe versie.
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim c As Range, firstaddress As String
If Target.Address(0, 0) = "D6" Then
  Set c = Sheets("leden").Columns(5).Find("gestopt")
    If Not c Is Nothing Then
       firstaddress = c.Address
   Do
    If MsgBox(c.Offset(, -4), vbYesNo) = vbNo Then
       Set c = Sheets("leden").Columns(5).FindNext(c)
     Else
          GoTo ga
       End If
   Loop While Not c Is Nothing And c.Address <> firstaddress
   MsgBox "geen gegevens gevonden"
 Exit Sub
ga:
  Application.Goto Sheets(CStr(c.Offset(, -4))).Range("A1")
     Exit Sub
Else
  MsgBox "geen gegevens gevonden"
      End If
    End If
 End Sub
 
Ja dat is um helemaal goed
ben er blij mee
probeer het te lezen maar snap het niet helemaal hoe je het voor elkaar hebt gekregen
'je mag hem voor me uitleggen als je er de tijd ( en zin) wat er op wel moment gebeurt
'vooral Application.Goto Sheets(CStr(c.Offset(, -4))).Range("A1")
maar top wat je voor me gemaakt hebt
:thumb:
 
Laatst bewerkt:
Ik kan dat uitleggen, maar daar is de F1 véél beter in.
Ga met de cursor in de code op of achter een functie staan, en druk F1.
 
bedankt voor deze handige tip
ga het gelijk proberen
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan