Afbeelding zichtbaar of onzichtbaar maken

Status
Niet open voor verdere reacties.

Visara

Gebruiker
Lid geworden
10 mrt 2019
Berichten
217
Goededag,

Hoe kan ik een afbeelding zichtbaar of onzichtbaar maken met een checkbox?
Ik heb het nu houtje-touwtje opgelost. Het werkt.
Ik heb een witte afbeelding toegevoegd aan de bladen. Deze kan de afbeelding waar het om gaat bedekken.
Door de checkbox te gebruiken plaats je de witte afbeelding naar voren en de echte afbeelding naar achter en visa versa.
Kan het zonder de witte bedekkende afbeelding?

Code:
[COLOR="#0000FF"]Private Sub CheckBox1_Click()
Select Case CheckBox1.Value[/COLOR]
[COLOR="#0000FF"]Case True[/COLOR]
Sheets("1 Regel").Select
    ActiveSheet.Unprotect
 [COLOR="#800080"][B]   ActiveSheet.Shapes.Range(Array("Picture 5")).Select
    Selection.ShapeRange.ZOrder msoSendForward
    ActiveSheet.Shapes.Range(Array("Picture 7")).Select
    Selection.ShapeRange.ZOrder msoSendBackward[/B][/COLOR]
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("2 Regels").Select
    ActiveSheet.Unprotect
    [COLOR="#800080"][B]ActiveSheet.Shapes.Range(Array("Picture 5")).Select
    Selection.ShapeRange.ZOrder msoSendForward
    ActiveSheet.Shapes.Range(Array("Picture 3")).Select
    Selection.ShapeRange.ZOrder msoSendBackward[/B][/COLOR]
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    Sheets("Invoer").Select

[COLOR="#0000FF"]Case False[/COLOR]
Sheets("1 Regel").Select
    ActiveSheet.Unprotect
    [COLOR="#800080"][B]ActiveSheet.Shapes.Range(Array("Picture 7")).Select
    Selection.ShapeRange.ZOrder msoSendForward
    ActiveSheet.Shapes.Range(Array("Picture 5")).Select
    Selection.ShapeRange.ZOrder msoSendBackward[/B][/COLOR]
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("2 Regels").Select
    ActiveSheet.Unprotect
    [COLOR="#800080"][B]ActiveSheet.Shapes.Range(Array("Picture 3")).Select
    Selection.ShapeRange.ZOrder msoSendForward
    ActiveSheet.Shapes.Range(Array("Picture 5")).Select
    Selection.ShapeRange.ZOrder msoSendBackward[/B][/COLOR]
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    Sheets("Invoer").Select
[COLOR="#0000FF"]
End Select
End Sub[/COLOR]

Ps: de bladen zijn beveiligd zonder password.
 

Bijlagen

  • Affichemaker.xlsm
    64,3 KB · Weergaven: 28
  • Invulgebied met checkbox.jpg
    Invulgebied met checkbox.jpg
    519,8 KB · Weergaven: 48
  • Praktijkvoorbeeld.jpg
    Praktijkvoorbeeld.jpg
    625 KB · Weergaven: 51
Zo?
Code:
[FONT=Verdana,Arial,Tahoma,Calibri,Geneva,sans-serif]Private Sub CheckBox1_Click()
  Sheets("1 Regel").Shapes.Range("Picture 5").Visible = CheckBox1
End Sub
[/FONT]
 
Als het alleen voor eigen gebruik is kan het zo zoals aangegeven door Jack.
Op een ander Pc met een Nederlandse versie heet het geen "Picture 5" maar Afbeelding 5", en dan gaat het fout.

Twee manieren:

Hernoem het plaatje in de naamvak of:
Code:
Private Sub CheckBox1_Click()
  Sheets("1 Regel").Shapes(5).Visible = CheckBox1
End Sub
 
Bedankt voor de goede tip.
Beter om het zo te maken dat er geen problemen ontstaan als er op een dag de Engelse versie geïnstalleerd wordt.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan