• 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.

Macro automatisch laten lopen bij Ja of nee

Status
Niet open voor verdere reacties.

walter19781

Gebruiker
Lid geworden
10 sep 2012
Berichten
5
Hallo,

Ik heb een vraag over het laten lopen van een macro bij ja of nee. Het lukt me om de macro te maken (ik wil dat er een aantal regels zichtbaar worden bij ja en verborgen worden bij nee.

Echter wil ik dat wanneer ik op een andere kolom waardes invul, hij niet gelijk de macro weer afloopt, want dan kom ik weer op cel B26 terecht. Zie ook de onderstaande code. Hoe kan ik nu voorkomen dat als ik cel c1 bijvoorbeeld vul, hij niet direct weer naar cel B26 gaat (het einde van de macro).


Private Sub Worksheet_Change(ByVal Target As Range)


If Range("$B$21").Value = "JA" Then

Rows("31:45").Select
Selection.EntireRow.Hidden = False
Range("$B$21").Select


End If

If Range("$B$21").Value = "NEE" Then

Rows("31:45").Select
Selection.EntireRow.Hidden = True
Range("$B$21").Select

End If

If Range("$B$22").Value = "JA" Then

Rows("47:53").Select
Selection.EntireRow.Hidden = False
Range("$B$22").Select


End If

If Range("$B$22").Value = "NEE" Then

Rows("47:53").Select
Selection.EntireRow.Hidden = True
Range("$B$22").Select

End If

If Range("$B$23").Value = "JA" Then

Rows("55:59").Select
Selection.EntireRow.Hidden = False
Range("$B$23").Select


End If

If Range("$B$23").Value = "NEE" Then

Rows("55:59").Select
Selection.EntireRow.Hidden = True
Range("$B$23").Select

End If

If Range("$B$24").Value = "JA" Then

Rows("61:69").Select
Selection.EntireRow.Hidden = False
Range("$B$24").Select


End If

If Range("$B$24").Value = "NEE" Then

Rows("61:69").Select
Selection.EntireRow.Hidden = True
Range("$B$24").Select

End If

If Range("$B$25").Value = "JA" Then

Rows("71:79").Select
Selection.EntireRow.Hidden = False
Range("$B$25").Select


End If

If Range("$B$25").Value = "NEE" Then

Rows("71:79").Select
Selection.EntireRow.Hidden = True
Range("$B$25").Select

End If

If Range("$B$26").Value = "JA" Then

Rows("81:88").Select
Selection.EntireRow.Hidden = False
Range("$B$26").Select


End If

If Range("$B$26").Value = "NEE" Then

Rows("81:88").Select
Selection.EntireRow.Hidden = True
Range("$B$26").Select

End If


End Sub
 
Met behulp van deze rode regel zal dat niet meer gebeuren:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 [COLOR="#FF0000"]If Intersect(Target, Range("B21:B25")) Is Nothing Then Exit Sub[/COLOR]     Rows("31:45").EntireRow.Hidden = Range("B21").Value <> "JA"
     Rows("47:53").EntireRow.Hidden = Range("B22").Value <> "JA"
     Rows("55:59").EntireRow.Hidden = Range("B23").Value <> "JA"
     Rows("61:69").EntireRow.Hidden = Range("B24").Value <> "JA"
     Rows("71:79").EntireRow.Hidden = Range("B25").Value <> "JA"
     Rows("81:88").EntireRow.Hidden = Range("B26").Value <> "JA"
 End Sub

en zet uw code in 't vervolg tussen tag's
 
Laatst bewerkt:
Kijk maar eens in vorige post ik heb de code een beetje ingekort.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan