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

Knoppen blijven zichtbaar ondanks macro

Status
Niet open voor verdere reacties.

HBot

Gebruiker
Lid geworden
12 dec 2006
Berichten
325
Geachte,

Ik heb op een tabblad(doel) knoppen staan die wel of niet zichtbaar moeten worden als in een bepaalde cel op een ander tabblad(Bron) (wel of niet) gegevens staan.

De code werkt perfect op een ander tabblad, maar daar is de verwijzing naar cellen in dat tabblad.

Nu heb ik een verwijzing gemaakt op dit tabblad (doel) naar het andere tabblad (Bron)
met als uitkomst 0 of 1 en dit als target cel gezet. in de hoop dat dit de oplossing was.

onderstaande code werkt hier niet, wat is fout?

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim oActive As Worksheet
    'als in cel C25 op een ander blad (Ontwikkeling) een getal staat moeten er op dit blad knoppen verschijnen
    'als cel C25 leeg is moet de knoppen niet zichtbaar zijn
    'in A66 saat een verwijzing (Als..) als er iets in C25 staat wordt hier en 1 weergegven.
    '
    If Target.Address = "$a$66" Then
     
        Set oActive = ActiveSheet
        If Target = 1 Then
      
            oActive.Shapes("knop 5").Visible = True
            oActive.Shapes("Knop 8").Visible = True
            oActive.Shapes("Knop 10").Visible = True
        Else
            oActive.Shapes("Knop 5").Visible = False
            oActive.Shapes("Knop 8").Visible = False
            oActive.Shapes("Knop 10").Visible = False
           
        End If
    End If
End Sub

Ik heb een voorbeeldje bijgesloten met deze VBA

gr
 

Bijlagen

  • knop zichbaar.xlsm
    29,1 KB · Weergaven: 45
Ik zou het voor beide bladen ineens doen:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim oActive As Worksheet
[COLOR="#008000"]    'als in cel C25 op een ander blad (Ontwikkeling) een getal staat moeten er op dit blad knoppen verschijnen
    'als cel C25 leeg is moet de knoppen niet zichtbaar zijn
    'in A66 saat een verwijzing (Als..) als er iets in C25 staat wordt hier en 1 weergegven.[/COLOR]
    '
    If Target.Address = "$B$2" Then
        ActiveSheet.Shapes("Knop 1").Visible = IIf(Target.Value = 1, True, False)
[COLOR="#008000"]        'ActiveSheet.Shapes("Knop 8").Visible = IIf(Target.Value = 1, True, False)
        'ActiveSheet.Shapes("Knop 10").Visible = IIf(Target.Value = 1, True, False)[/COLOR]
        
        Blad2.Shapes("Rechthoek 1").Visible = IIf(Target.Value = 1, True, False)
[COLOR="#008000"]        'Blad2.Shapes("Knop 8").Visible = IIf(Target.Value = 1, True, False)
        'Blad2.Shapes("Knop 10").Visible = IIf(Target.Value = 1, True, False)[/COLOR]
    End If
End Sub
 
Hi Edmoor,

ziet er inder geval wat eenvoudiger uit.
krijg e'm niet aan de praat
 
Dit zou genoeg moeten zijn:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$2" Then
        ActiveSheet.Shapes("Knop 1").Visible = Target.Value <> ""
        Blad2.Shapes("Rechthoek 1").Visible = Target.Value <> ""
    End If
End Sub
 
Octafish

Dank,

Duurt even maar deze doet het zoals gewenst,

beide bedankt, hier kan ik weer verder mee.

Gr
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan