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

Protect / Unprotect

Protect / Unprotect
30.01.2006 11:16:57
Torsten
Hallo beisammen,
beim Öffnen einer Datei soll folgender Code ausgeführt werden:
...
With Worksheets("Eingaben")
Select Case Application.UserName
Case "User1", "User2", "User3", "UserN"
.Range("DATEN").Unprotect "PW"
Case Else
.Range("DATEN").Protect "PW"
End Select
End With
...
Wobei DATEN ein Name für den Range ("E12:Q71) des WS ("Eingaben") ist.
Leider bricht Excel den Code mit der Meldung
"Objekt unterstützt diese Eigenschaft oder Methode nicht"
und markiert die Zeile ".Range("DATEN").Unprotect "PW""
Was muß ich an dem Code noch anpassen?
Für Eure Hilfe im voraus besten Dank.
Gruß
Torsten

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Protect / Unprotect
30.01.2006 11:24:36
Andi
Hi,
Protect und Unprotect können nur auf Worksheets angewendet werden, nicht auf Ranges.
Du kannst aber für alle Zellen in Deiner Mappe außer für den Bereich "Daten" in den Eigenschaften unter "Schutz" das Häkchen bei "gesperrt" rausnehmen, dann ist trotz Blattschutz nur der gewünschte Bereich gegen Eingaben geschüzt.
Schönen Gruß,
Andi
AW: Protect / Unprotect
30.01.2006 11:45:17
Torsten
Hallo Andi,
das Problem ist, daß das komplette WS("Eingaben") grundsätzlich gesperrt sein soll und nur der Range("DATEN") entsperrt werden soll, wenn der User ein User aus dem Select-Case ist. Wenn ich das richtig verstanden habe, ist das so aber nicht möglich, oder doch?
Gruß
Torsten
Anzeige
AW: Protect / Unprotect
30.01.2006 12:01:49
Andi
Hi,
wäre Dir mit folgendem workaround geholfen?

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect([DATEN], Target) Is Nothing Then
MsgBox "Darfst Du nicht"
With Application
.EnableEvents = False
.Undo
.EnableEvents = True
End With
Exit Sub
Else
Select Case Application.UserName
Case "User1", "User2", "User3", "UserN"
Exit Sub
Case Else
MsgBox "Darfst Du nicht"
With Application
.EnableEvents = False
.Undo
.EnableEvents = True
End With
Exit Sub
End Select
End If
End Sub

Der normale Blattschutz is dann nicht meht notwendig.
Schönen Gruß,
Andi
Anzeige
AW: Protect / Unprotect
30.01.2006 12:03:21
Hoffi
Hallo Torsten,
mal als Ansatz:

Sub Cellen_sperren_entsperren()
Dim Daten As Range
Dim User As String
Dim PW As String
Set Daten = Range("A1:B6")
User = InputBox("Bitte Passwort eingeben: ", "Passwortabfrage")
Select Case User
Case Is = "Test"
Daten.Locked = False
Case Is <> "Test"
Daten.Locked = True
End Select
End Sub

Grüße
Hoffi
AW: Protect / Unprotect
30.01.2006 11:24:54
Hoffi
Hallo Torsten,
wenn Daten eine Variable ist, dann ohne "" angeben:
.Range(DATEN).Unprotect "PW"
Grüße
Hoffi
Rückmeldung obs klappt wäre nett...
AW: erledigt - mT
30.01.2006 16:33:41
Torsten
Hallo Andi und Hoffi,
ich lasse der Einfachheit halber userabhängig einen cmb_Button einblenden, der den User berechtigt, den Schreibschutz des ganzen Worksheets aufzuheben. Ist wohl auch nicht ganz verkehrt, weil die User sonst z.B. keine Zeilen einfügen können.
Ich danke Euch trotzdem für Eure Tips, die ich vielleicht an anderer Stelle mal brauchen kann.
Gruß
Torsten
Anzeige
danke für die Rückmeldung (ot)
30.01.2006 17:14:54
Andi
.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige