Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
752to756
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
752to756
752to756
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Laufzeitfehler 1004 bei Blattschutz

Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:13:19
Armin
Verzweiflung mit VBA Code
Bei aktiven Blattschutz funktioniert der VBA Code nicht. Lösungen vom Forum habe ich schon aber die funktionieren nicht, bzw ich weiss nicht wie ich die einbinden soll.
In der Beispieltabelle ist (soll) der Blattschutz an sein nur der markierte Bereich in den soll man Werte eintragen können. Bissher muss ich den Blattschutz manuell entfernen dann meine Eingabe machen, bei der nächsten Eingabe ist der Blattschutz wieder aktiv und wird mit Laufzeitfehler 1004 quittiert.
Kann man das ändern das die markierten Bereiche vom Blatschutz ausgenommen werden und dann das VBA noch funktioniert.
Beispieltabelle:
https://www.herber.de/bbs/user/32958.xls
Danke im Voraus
gruss Armin

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:27:16
Armin
Hallo Matthias,
habe das Passwort angepasst und in meine Tabelle, den Code eingefügt.
das ergibt den Laufzeitfehler
warum weiss ich nicht - bin doch VBA anfänger.
gruss Armin
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:32:53
Matthias
Hallo Armin,
wie lautet dein Code denn genau? In welchem Modul steht er?
Gruß Matthias
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:35:41
Armin
Also hier der Code, dieser steht in dem Tabellenblatt namens RDP

Private Sub Workbook_Open()
Sheets("RDP").Protect Password:="rdp", UserInterfaceOnly:=True
Select Case Target.Text
Case "F1"
Target.Interior.ColorIndex = 4
Case "F2"
Target.Interior.ColorIndex = 4
Case "F3"
Target.Interior.ColorIndex = 4
Case "F4"
Target.Interior.ColorIndex = 4
Case "F5"
Target.Interior.ColorIndex = 4
Case "F6"
Target.Interior.ColorIndex = 4
Case "F7"
Target.Interior.ColorIndex = 4
Case "F8"
Target.Interior.ColorIndex = 4
Case "F9"
Target.Interior.ColorIndex = 4
Case "F10"
Target.Interior.ColorIndex = 4
Case "S1"
Target.Interior.ColorIndex = 36
Case "S2"
Target.Interior.ColorIndex = 36
Case "S3"
Target.Interior.ColorIndex = 36
Case "S4"
Target.Interior.ColorIndex = 36
Case "S5"
Target.Interior.ColorIndex = 36
Case "S6"
Target.Interior.ColorIndex = 36
Case "S7"
Target.Interior.ColorIndex = 36
Case "S8"
Target.Interior.ColorIndex = 36
Case "S9"
Target.Interior.ColorIndex = 38
Case "S10"
Target.Interior.ColorIndex = 38
Case "D1"
Target.Interior.ColorIndex = 38
Case "D2"
Target.Interior.ColorIndex = 38
Case "D3"
Target.Interior.ColorIndex = 38
Case "D4"
Target.Interior.ColorIndex = 38
Case "D5"
Target.Interior.ColorIndex = 38
Case "D6"
Target.Interior.ColorIndex = 38
Case "D7"
Target.Interior.ColorIndex = 38
Case "D8"
Target.Interior.ColorIndex = 38
Case "D9"
Target.Interior.ColorIndex = 38
Case "D10"
Target.Interior.ColorIndex = 38
Case "N1"
Target.Interior.ColorIndex = 37
Case "N2"
Target.Interior.ColorIndex = 37
Case "N3"
Target.Interior.ColorIndex = 37
Case "N4"
Target.Interior.ColorIndex = 37
Case "N5"
Target.Interior.ColorIndex = 37
Case "N6"
Target.Interior.ColorIndex = 37
Case "N7"
Target.Interior.ColorIndex = 37
Case "N8"
Target.Interior.ColorIndex = 37
Case "N9"
Target.Interior.ColorIndex = 37
Case "N10"
Target.Interior.ColorIndex = 37
Case "FT"
Target.Interior.ColorIndex = 15
Case "ÜF"
Target.Interior.ColorIndex = 15
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Sub

gruss Armin
Anzeige
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:37:23
Reinhard
Hi Armin,
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
ActiveSheet.Unprotect
Select Case Target.Text
Case "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10"
Target.Interior.ColorIndex = 4
Case "S1", "S2", "S3", "S4", "S5", "S6", "S7", "S8", "S9", "S10"
Target.Interior.ColorIndex = 36
Case "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10"
Target.Interior.ColorIndex = 38
Case "N1", "N2", "N3", "N4", "N5", "N6", "N7", "N8", "N9", "N10"
Target.Interior.ColorIndex = 37
Case "FT", "ÜF"
Target.Interior.ColorIndex = 15
Case Else
Target.Interior.ColorIndex = xlNone
End Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Anzeige
UPS da war einer schneller ;-) o.w.T
18.04.2006 14:39:26
EtoPHG
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:38:31
EtoPHG
Hallo Armin,
Ersetze Deinen Code mit:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
ActiveSheet.Unprotect
Select Case Target.Text
Case "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10"
Target.Interior.ColorIndex = 4
Case "S1", "S2", "S3", "S4", "S5", "S6", "S7", "S8"
Target.Interior.ColorIndex = 36
Case "S9", "S10", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10"
Target.Interior.ColorIndex = 38
Case "N1", "N2", "N3", "N4", "N5", "N6", "N7", "N8", "N9", "N10"
Target.Interior.ColorIndex = 37
Case "FT", "ÜF"
Target.Interior.ColorIndex = 15
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Gruss Hansueli
Anzeige
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:48:35
Armin
Super ich, ich glaube das wars,
habe den code eingefügt und er geht
was ist option explicit? habe den code kopiert und einfach in die Tabelle eingefügt.
gruss Armin
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 14:58:53
EtoPHG
Armin,
Option Explicit = Heisst, alle Variablen innerhalb der Prozeduren müssen explicit deklariert werden. Sonst definiert der VBA-Interpreter die Variablen (Datentypen) selber, was manchmal zu undurchschaubaren Ergebnissen führt. In Deinem Code nicht so wichtig, aber eine Angewohnheit von mir, damit VBA nicht etwas macht, dass ich nicht will.
Übrigens ist Dein gesposteter Code-Teil NICHT IDENTISCH mit dem code im File, Du hast plötzlich ein Passwort für den Schutz. Das macht die Arbeit für Helfer im Forum nicht unbedingt leichter... wenn es dann nachher (wie so oft) heisst.... Funktioniert nicht, WARUM ?
Reinhard,
Wir hatten die gleiche Idee... aber leichte Unterschiede im Code lassen sich ausmachen (siehe Grenze "S9"..."D10" (gemäss Source-Code)...
Du hast das ja schon im Original-Thread richtig bemerkt.
Gruss Hansueli
Anzeige
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 15:04:43
Armin
Danke erst mal für die Hilfe,
das mit dem Passwort ist jetzt das problem, sorry für den Falschen code
das Blatt ist mit dem Passwort "rdp" geschützt. Ist auch notwendig weil eine eingabe
in einem anderen Blatt mir in dieser Tabelle Zeilen aus und wieder einblendet je nach eingabe. Kann mann das noch anpassen? Das Passwort einarbeiten.
Nach dem aus und wieder einblenden fragt sonst excel nach dem passwort.
gruss Armin
AW: Laufzeitfehler 1004 bei Blattschutz
18.04.2006 15:13:12
EtoPHG
Armin,
Ein bisschen überlegen, oder das Help (F1) des VBE-Editors benutzen, würde manchmal auch helfen. Tip: Selektier mal das Wort .Unprotect im VB-Editor und drück F1...
Also hier:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
ActiveSheet.Unprotect Password:="rdp"
Select Case Target.Text
Case "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10"
Target.Interior.ColorIndex = 4
Case "S1", "S2", "S3", "S4", "S5", "S6", "S7", "S8"
Target.Interior.ColorIndex = 36
Case "S9", "S10", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10"
Target.Interior.ColorIndex = 38
Case "N1", "N2", "N3", "N4", "N5", "N6", "N7", "N8", "N9", "N10"
Target.Interior.ColorIndex = 37
Case "FT", "ÜF"
Target.Interior.ColorIndex = 15
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
ActiveSheet.Protect Password:="rdp", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Gruss Hansueli
Anzeige
Thema beendet
18.04.2006 15:19:59
Armin
Ok, das mit der Hilfe - Hast ja Recht, ich lese mich auch erst ein.
Vielen Dank an Dich und alle anderen für die Unterstützung.
Klappt supper
gruss Armin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige