Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
272to276
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
272to276
272to276
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Laufzeitfehler '1004' Erbitte Hilfe!!

Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 20:37:55
Klaus W.
Schönen guten Abend zusammen.

Folgender Code verursacht bei einem geschützten Arbeitsplatz den Laufzeitfehler 1004:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

' SCHRIFT
' für Hintergrund RaZelle.Interior.ColorIndex
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("C6:AG50,C54:AG63,C67:AG101,C104:AG153,C157:AG166,C171:AG182")
' ActiveSheet.Unprotect
For Each RaZelle In Range(Target.Address)
' überprüfen ob Zelle im vorgegebenen Bereich
If Not Intersect(RaZelle, RaBereich) Is Nothing Then

Select Case RaZelle.Value
Case "S"
RaZelle.Interior.ColorIndex = 26
Case "N"
RaZelle.Interior.ColorIndex = 24
Case "U"
RaZelle.Interior.ColorIndex = 4
Case "K"
RaZelle.Interior.ColorIndex = 5
Case "B"
RaZelle.Interior.ColorIndex = 7
Case Else
RaZelle.Interior.ColorIndex = 0
End Select
End If
Next RaZelle
' ActiveSheet.Protect
Set RaBereich = Nothing
End Sub

Den Range-Bereich habe ich schon mehrfach überprüft.
Ist der Blattschutz aufgehoben, klappt alles wunderbar.
Blatt geschützt und auch in den Bereichen die Sperre aufgehoben - Laufzeitfehler 1004.

Könnte sich bitte jemand dieses Problems annehmen??

Vielen Dank

Klaus W.

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 20:40:54
Mike E.

Hallo Klaus,

du hast "unprotect" auskommentiert. kann es daran liegen?

Gruß
Mike

Re: Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 20:46:39
ChrisL

Hallo Klaus

Problem ist, dass du die Hintergrundfarbe auch manuell nicht ändern kannst. Dies auch dann wenn der Blattschutz für den Bereich nicht aktiv ist.

Folglich wirst du um Unprotect, Protect nicht rumkommen (Hinweis Mike).

Gruss
Chris

Re: Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 20:50:55
Klaus W.

Hallo Mike,

nö, daran liegt es nicht. Wenn ich die Anweisung aktiv setze, wird bei der Eingabe lediglich das Passwort-Fenster für Blattschutz aufheben eingeblendet. Gebe ich mein Passwort ein, funktioniert das ganze Spielchen wunderbar.

Leider kein Treffer.

mfg Klaus W.

Anzeige
Re: Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 20:55:01
Mike E.

Hallo Klaus,

wie wär's denn, wenn du die Passwort-Abfrage ins Makro integrierst?

ActiveSheet.Protect Password:= "?????"

Dein Code

ActiveSheet.Protect Password:= "?????"

Denn ChrisL hat schon Recht. Um's "unprotecten" wirst du nicht herumkommen.

Gruß
Mike


Re: Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 21:44:47
Klaus W.

Vielen Dank Leute.
Funktioniert prächtig mit:

ActiveSheet.Protect Password:= "?????"

Dein Code

ActiveSheet.Protect Password:= "?????"

Nur noch ein kleines Problem bei der Sache.

Wenn ich einen Zellbereich auswähle um mehrere vorhandene Einträge gleichzeitig zu löschen, bekomme ich ebenfalls Laufzeitfehler 1004. Die Werte sind zwar gelöscht, jedoch nicht die Farben.
Wäre dieses Problemchen noch behoben, hätte ich vermutlich kein Problem(chen) mehr.

Übrigens, an dieser Stelle möchte ich euch allen meinen größten Respekt für euer Excel- bzw. VB-Wissen zollen und hoffe gleichzeitig, dass ich mich mit dem nächsten Problem, welches mit Sicherheit auftaucht, wieder an euch wenden darf.

Viele Grüße aus Nürnberg

Klaus W.

Anzeige
Re: Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 21:56:55
Mike E.

Hallo klaus,

die "Löschaktion" kann ich deinem ersten Posting jedoch nicht entnehmen, vermute also, du hast irgendwo noch einen zweiten Code auf Lager (die Protect/Unprotect-Geschichte darf dann natürlich in keinem Sub fehlen....)

Gruß
Mike

Re: Laufzeitfehler '1004' Erbitte Hilfe!!
26.06.2003 23:10:23
Klaus W.

Nö nö Mike.
Vermutlich habe ich mich nicht genau ausgedrückt.
Der Kollege trägt sich in seinem Bereich für verschiedene Dienste (Vormittag, Nachmittag ....) ein. Dies jeweils für ein ganzes Monat in voraus. Nachdem er sich teilweise eingetragen hat stellt er fest, dass eine andere Einteilung für ihn besser wäre. Jetzt geht er her und will händisch (Entf-Taste) einige seiner bereits getätigten Eintragungen löschen. Nachdem er ein findiges Kerlchen ist, markiert er den entsprechenden Bereich und drückt die "Entf-Taste". Da taucht jetzt der Laufzeitfehler auf und er landet in VB. Das möchte ich natürlich nicht und es ist auch nicht schön, wenn ein solcher Fehler auftaucht.

Hat jemand evtl. eine Lösung. Kann ich evtl. eine Bereichsmarkierung unterbinden und die Koll. zwingen, einzeln zu löschen?

Hier noch mal der Code:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

' SCHRIFT
' für Hintergrund RaZelle.Interior.ColorIndex
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("C6:AG50,C54:AG63,C67:AG101,C104:AG153,C157:AG166,C171:AG182")
ActiveSheet.Unprotect Password:="......."
For Each RaZelle In Range(Target.Address)
' überprüfen ob Zelle im vorgegebenen Bereich
If Not Intersect(RaZelle, RaBereich) Is Nothing Then

Select Case RaZelle.Value
Case "S"
RaZelle.Interior.ColorIndex = 26
Case "N"
RaZelle.Interior.ColorIndex = 24
Case "U"
RaZelle.Interior.ColorIndex = 4
Case "K"
RaZelle.Interior.ColorIndex = 5
Case "B"
RaZelle.Interior.ColorIndex = 7
Case Else
RaZelle.Interior.ColorIndex = 0
End Select
End If
ActiveSheet.Protect Password:="......."

Next RaZelle
' ActiveSheet.Protect
Set RaZelle = Nothing
End Sub

Vielen Dank

Klaus W.


Anzeige
Fehler gefunden. Danke!!
26.06.2003 23:35:09
Klaus W.

..



Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige