Grafik per VB ein-/ausblenden

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Grafik per VB ein-/ausblenden von: der.dan
Geschrieben am: 08.02.2005 09:40:45

Guten Morgen.

Da ich über's Wochenende nicht ins Forum konnte, ist "meine" Diskussion zur Ein-/Ausblendung von Grafiken ein wenig zu weit nach unten gerutscht... :-(

Dumm nur daß ich das Problem immer noch nicht lösen konnte. Daher hoffe ich nochmals auf Hilfe der (VBA-)Experten hier...

Der Urspruchsthread war der folgende: https://www.herber.de/forum/messages/561193.html

Es ging (und geht immer noch) darum bei der Auswahl von zwei verschiedenen OptionButtons zwei Grafiken ein- oder auszublenden.

Damit Ihr nicht wirklich alles lesen müsst, hier der letzte Beitrag zu dem Thema:

"Hallo Bernd.

Entschuldige bitte meine späte Rückmeldung.
Angepasst habe ich den Code ja mittlerweile, nur erhalte ich bei Ausführung folgende Meldung:

"
Laufzeitfehler '-2147024809 (80070057)

Das Element mit dem angegebenen Namen wurde nicht gefunden.
"


Mein Code lautet wie folgt:

"

Private Sub OptionButtonA2_Click()
    If OptionButtonA2 = True Then
        Worksheets("Montag").Shapes("Bild76").Visible = False
    End If
End Sub


"


Wenn ich die Fehlermeldung mit beenden quittiere, erhalte ich folgende Fehlermeldung:

"
Laufzeitfehler '5':

Ungültiger Prozeduraufruf oder ungültiges Argument
"

Nun bin ich vollkommen durcheinander...



mfg, Dan


Bezieht sich auf diese Nachricht:
hallo dan

versuch mal so:
nimm mal folgendes makro mit dem recorder auf.

einfach nur das bild anclicken.
dann kommt sowas raus:

Sub Makro2()
'
' Makro2 Makro
' Makro am 04.02.2005 von B aufgezeichnet
'

'
ActiveSheet.Shapes("Rectangle 4").Select
End Sub


in diesem beispiel wäre "Rectangle 4" der excelinterne name.
für dein blatt kannst worksheets("Tabelle1") schreiben.
also der name der unten auf dem tabellenreiter angezeigt wird.
der code für das ausblenden in diesem beispiel angepasst hieße dann:

Worksheets("Tabelle1").Shapes("Rectangle 4").Visible = False

bernd

"


Wäre super wenn ich hierzu weitere Hilfe bekommen könnte.



mfg, Dan
Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: Josef Ehrensberger
Geschrieben am: 08.02.2005 09:44:11

Hallo Dan!

Heist das Bild auch "Shapes("Bild76")", oder heist es vielleicht "Shapes("Bild 76")" ?


Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: der.dan
Geschrieben am: 08.02.2005 11:16:00

Hallo Josef.

Der Tipp mit dem Leerzeichen war hervorragend. Habe ich vollkommen übersehen...

Teilweise funktioniert das Ganze auch schon - zumindest das Ein- und Ausblenden von "Bild 76". Nur "Bild 77" wird weder ein- noch ausgeblendet - und ich weiß noch nicht warum.

Hier der "neue" Code:



Private Sub OptionButtonAuslandNein_Click()
    If OptionButtonAuslandNein = True Then
        Worksheets("Montag").Shapes("Bild 76").Visible = True And Worksheets("Montag").Shapes("Bild 77").Visible = False
    
    End If
End Sub





Private Sub OptionButtonAuslandJa_Click()
    If OptionButtonAuslandJa = True Then
         Worksheets("Montag").Shapes("Bild 76").Visible = False And Worksheets("Montag").Shapes("Bild 77").Visible = True
    
    End If
End Sub





Vielleicht findest Du ja noch was das ich übersehen habe.



mfg, Dan


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: Josef Ehrensberger
Geschrieben am: 08.02.2005 11:25:51

Hallo Dan!

So geht das nicht!

Mit "And" kannst du die If-Abfrage(n) verknüpfen, aber nicht die Anweisungen!

Ich würde es so machen.

Private Sub OptionButtonAuslandNein_Click()
   Worksheets("Montag").Shapes("Bild 76").Visible = OptionButtonAuslandNein
   Worksheets("Montag").Shapes("Bild 77").Visible = Not OptionButtonAuslandNein 
End Sub
Private Sub OptionButtonAuslandJa_Click()
   Worksheets("Montag").Shapes("Bild 76").Visible = OptionButtonAuslandJa
   Worksheets("Montag").Shapes("Bild 77").Visible = Not OptionButtonAuslandJa
End Sub



Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: der.dan
Geschrieben am: 08.02.2005 12:08:54

Hm - also wenn ich Deinen Code 1:1 übernehme, dann passiert beim anklicken der entsprechenden OptionButtons ersteinmal überhaupt nichts.... Auch wenn ich eine If-Then-Verknüpfung einbaue tut sich nicht wirklich viel...

Auch wenn ich meinen Code ein wenig umschreibe und eine "Else:"-Funktion einbaue funktioniert es noch nicht so wie ich es gerne hätte - es werden dann beide Bilder angezeigt - egal welcher Button gerade aktiv ist...

Hier mal meine Abwandlung:

Private Sub OptionButtonAuslandNein_Click()
    If OptionButtonAuslandNein = True Then
        Worksheets("Montag").Shapes("Bild 76").Visible = True
    Else: Worksheets("Montag").Shapes("Bild76").Visible = False
    
    End If
End Sub


Private Sub OptionButtonAuslandJa_Click()
    If OptionButtonAuslandJa = True Then
         Worksheets("Montag").Shapes("Bild 77").Visible = True
    Else: Worksheets("Montag").Shapes("Bild 77").Visible = False
    
    End If
End Sub



mfg, Dan


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: Josef Ehrensberger
Geschrieben am: 08.02.2005 12:14:01

Hallo Dan!

Sorry, ein "Not" war falsch!

Private Sub OptionButtonAuslandNein_Click()
   Worksheets("Montag").Shapes("Bild 76").Visible = Not OptionButtonAuslandNein
   Worksheets("Montag").Shapes("Bild 77").Visible = OptionButtonAuslandNein
End Sub
Private Sub OptionButtonAuslandJa_Click()
   Worksheets("Montag").Shapes("Bild 76").Visible = OptionButtonAuslandJa
   Worksheets("Montag").Shapes("Bild 77").Visible = Not OptionButtonAuslandJa
End Sub



Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: der.dan
Geschrieben am: 08.02.2005 13:21:16

Hallo Josef. (Oder Sepp?)

Super! Funktioniert ganz vorzüglich! :-D
Wusste gar nicht daß man in VB auch ohne If- oder andere "Anweisungen" Funktionen programmieren kann. Wieder was dazu gelernt! :-)

Jetzt habe ich gleich noch eine Frage: Wie kann ich es realisieren in Folge eines "TRUE" mehrere Aktionen gleichzeitig bzw. direkt hintereinander auszuführen. Das "AND" soll ja nicht funktionieren...



mfg, Dan


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: Josef Ehrensberger
Geschrieben am: 08.02.2005 13:31:57

Hallo Dan!

Dann musst du mit If arbeiten!

Private Sub OptionButtonAuslandNein_Click()
If OptionButtonAuslandNein = True Then
   Worksheets("Montag").Shapes("Bild 76").Visible = True
   Worksheets("Montag").Shapes("Bild 77").Visible = False
   'sonstige Anweisungen
   '...
End If
End Sub



Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: der.dan
Geschrieben am: 08.02.2005 13:57:02

Also kann ich einfach "in-einem-durch-schreiben"? Super! :-)

Hab gleich noch eine Frage zum Thema Zellschutz - Mache hierzu aber gerade einen neuen Thread auf, da sich die Thematik doch deutlich hiervon unterscheidet...

Vielen Dank auf jeden Fall für Deine Hilfe zu diesem Problem!


mfg, Dan


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: der.dan
Geschrieben am: 08.02.2005 14:12:34

Also kann ich einfach "in-einem-durch-schreiben"? Super! :-)

Hab gleich noch eine Frage zum Thema Zellschutz - Mache hierzu aber gerade einen neuen Thread auf, da sich die Thematik doch deutlich hiervon unterscheidet...

Vielen Dank auf jeden Fall für Deine Hilfe zu diesem Problem!


mfg, Dan


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: RR
Geschrieben am: 08.02.2005 09:48:16

Teste mal:

Shapes("Bild 76").Visible = msoFalse

Gruß
RR


Bild


Betrifft: AW: Grafik per VB ein-/ausblenden von: der.dan
Geschrieben am: 08.02.2005 11:18:39

Hallo RR.

Was ist denn "msoFalse" für ein Befehl? Im Recorder ist der Befehl nicht bekannt, und auch die Suche kann mir hier nicht helfen....


mfg, Dan


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Grafik per VB ein-/ausblenden"