online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon juppjuppes vom 20.05.2022, 16:13 Options

Problem mit zwei VBA Befehle

Hallo,
wer kann mir sagen wie ich diese zwei VBA Befehle (Ein/Ausblenden von Zeilen und Bilder Ein/Ausblenden) in Excel 2003 verbinden kann. Ich bekomme immer eine Fehlermeldung „Laufzeitfehler 1004“. Jeder einzelne Befehl für sich alleine funktioniert wunderbar. Meine VBA Kenntnisse sind nicht sehr gut.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$U$12" Then
ActiveSheet.Unprotect
Worksheets("Zeichnung").Rows("7:10").Hidden = Worksheets("Rechner").Range("U12").Value < 3
ActiveSheet.Protect
End If
End Sub


Private Sub Worksheet_Calculate()
If [AI2].Value = 1 Then
Shapes("Bild 1").Visible = True
Else
Shapes("Bild 1").Visible = False
End If
If [AI2].Value = 2 Then
Shapes("Bild 2").Visible = True
Else
Shapes("Bild 2").Visible = False
End If
End Sub


Gruß Jupp


Antwort schreiben

Antwort 1 von Hajo_Zi vom 20.05.2022, 16:20 Options

Hallo Jupp,

ich hätte den zweiten Code so geschrieben.

Private Sub Worksheet_Calculate()
    Shapes("Bild 1").Visible = Range("AI2").Value = 1
    Shapes("Bild 2").Visible = Range("AI2").Value = 2
End Sub


Gruß Hajo

Antwort 2 von juppjuppes vom 20.05.2022, 16:40 Options

Hallo,
das ist nicht mein Problem. Ich möchte das Zeilen ein und ausblenden

(Befehl1)

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$U$12" Then
ActiveSheet.Unprotect
Worksheets("Zeichnung").Rows("7:10").Hidden = Worksheets("Rechner").Range("U12").Value < 3
ActiveSheet.Protect
End If
End Sub

und Bilder ein und ausblenden

(Befehl2)

Private Sub Worksheet_Calculate()
If [AI2].Value = 1 Then
Shapes("Bild 1").Visible = True
Else
Shapes("Bild 1").Visible = False
End If
If [AI2].Value = 2 Then
Shapes("Bild 2").Visible = True
Else
Shapes("Bild 2").Visible = False
End If
End Sub

für ein Arbeitsblatt nutzen. Jeder einzelne für sich alleine funktioniert schon. Quasi, wie verbinde ich diese beiden Befehle (vielleicht ist Befehle das falsche Wort). Ohne diese Fehlermeldung zu bekommen.

Gruß Jupp

Antwort 3 von Hajo_Zi vom 20.05.2022, 16:43 Options

Hallo Jupp,

ich habe die Datei nicht. Ich hätte vermutet da kommt kene Fehlermeldung. Mir ist auch nicht klar was Du willst.

Gruß Hajo

Antwort 4 von juppjuppes vom 20.05.2022, 17:04 Options

Hallo Hajo,

ich glaube mein Problem ist ganz einfach zu lösen. Ich weiß aber nicht wie.
Ich versuch`s noch mal besser zu beschreiben.
Ich blende auf meinem Arbeitsblatt 1 Bilder ein und aus.

Private Sub Worksheet_Calculate()
If [AI2].Value = 1 Then
Shapes("Bild 1").Visible = True
Else
Shapes("Bild 1").Visible = False
End If
If [AI2].Value = 2 Then
Shapes("Bild 2").Visible = True
Else
Shapes("Bild 2").Visible = False
End If
End Sub

jetzt möchte ich zusätzlich noch von Arbeitsblatt 1 aus Zeilen auf Arbeitsblatt2 ein und ausblenden.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$U$12" Then
ActiveSheet.Unprotect
Worksheets("Zeichnung").Rows("7:10").Hidden = Worksheets("Rechner").Range("U12").Value < 3
ActiveSheet.Protect
End If
End Sub

wenn ich die zwei Sachen hintereinander hänge bekomme ich die Fehlermeldung. Wie gesagt ich habe nicht fiel Ahnung.

Private Sub Worksheet_Calculate()
If [AI2].Value = 1 Then
Shapes("Bild 1").Visible = True
Else
Shapes("Bild 1").Visible = False
End If
If [AI2].Value = 2 Then
Shapes("Bild 2").Visible = True
Else
Shapes("Bild 2").Visible = False
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$U$12" Then
ActiveSheet.Unprotect
Worksheets("Zeichnung").Rows("7:10").Hidden = Worksheets("Rechner").Range("U12").Value < 3
ActiveSheet.Protect
End If
End Sub

Ich hoffe es war jetzt verständlich.

Gruß Jupp

Antwort 5 von Hajo_Zi vom 20.05.2022, 17:17 Options

Halo Jupp,

Du hebst den Schutz au der aktiven Tabelle auf, das ausblenden passiertaber auf einer anderen. Leider sehe ich nicht welche.

With Worksheets("Zeichnung")
.unprotect
.Rows("7:10").Hidden = Range("U12").Value < 3
.Protect
End With

Gruß Hajo

Antwort 6 von woher2010 vom 20.05.2022, 17:23 Options

Hallo,
dein 1tes Makros hast du nun zum 4ten mal gepostet. Warum?
Welche Fehlermeldung bekommst du? Wenn du auf debuggen klickst:
Welche Zeile ist dann gelb?
mfg
Wolfgang H.

Antwort 7 von juppjuppes vom 20.05.2022, 17:33 Options

Hajo,

Du hast recht, es liegt an den Schreibschutz in Arbeitsblatt 2 „Zeichnung“ (ich war auf dem falsche Dampfer).
Wenn ich den rausnehme funktioniert´s. Würde aber gerne den Schreibschutz drin lassen. Hast Du eine Idee?

Jupp

Antwort 8 von Hajo_Zi vom 20.05.2022, 17:35 Options

Hallo Jupp,

warum habe ich einen Vrschlag gemacht, wenn der nicht getestet wird?

Gruß Hajo

Antwort 9 von juppjuppes vom 20.05.2022, 17:44 Options

Hajo, es funktioniert alles!

Vielen vielen Dank,
Du hast mir super weitergeholfen!

Gruß Jupp

Ähnliche Themen

Ecxel VBA problem
Mr.Bond  14.01.2009 - 114 Hits - 1 Antwort

Befehle in einem anderen Tabellenblatt
afetinci  06.04.2009 - 140 Hits - 1 Antwort

VBA-Problem mit CHR(13)
Kauz  09.11.2009 - 411 Hits - 10 Antworten

Problem mit einen VBA Code
speedy71  23.01.2010 - 204 Hits - 4 Antworten

brauche hilfe bei vba/excel Problem
vba-noob  09.05.2010 - 222 Hits - 10 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026