Herbers Excel-Forum - das Archiv
Spalten schützen
Betrifft: Spalten schützen
von: Michael
Geschrieben am: 18.09.2003 19:01:11
Hallo,
ich möchte in einer Arbeitsmappe bestimmte Spalten mit einem Kennwort schützen, so dass andere Benutzer in diesen Spalten nichts ändern können.
Auf diese Spalten bezieht sich jedoch ein vba-Code, der dann nicht mehr funktioniert, wenn ich unter Extras - Schutz - Blatt schützen ein Kennwort vergebe.
Gibt es noch eine andere Möglichkeit?
Betrifft: AW: Spalten schützen
von: Hajo_Zi
Geschrieben am: 18.09.2003 19:06:53
Hallo Michael
ohne Code, nur die Vermutung hebe in den Code den Schutz zu Beginn auf und setze ihn wieder am Ende.
Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Zurzeit gibt es wieder Probleme mit der E-Mail Benachrichtigung.
Ich bekomme Mails zu Beiträgen an denen ich nicht beteiligt bin und zusätzlich noch Mails zu meinen eigenen Beiträgen.
Das Problem mit den eigenen Benachrichtigung kann gelöst werden durch Lösche und Neuanmelden. Dieses möchte ich aber nicht jeden Tag machen.
Um dieses Problem erstmal zu beseitigen habe ich die automatische Mailbenachrichtigung abgeschaltet.
Aus diesem Grunde ist es dem Zufall überlassen ob auf Rückfragen Antworten von mir kommen.
http://home.media-n.de/ziplies/
Betrifft: AW: Spalten schützen
von: Michael
Geschrieben am: 18.09.2003 19:27:00
Also, so sieht der Code aus, er bezieht sich auf die Spalten 9-12:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 11 Then
Application.EnableEvents = False
Cells(Target.Row, 9) = Cells(Target.Row, 9) + Cells(Target.Row, 11)
Cells(Target.Row, 11) = ""
Application.EnableEvents = True
End If
If Target.Column = 12 Then
Application.EnableEvents = False
Cells(Target.Row, 10) = Cells(Target.Row, 10) + Cells(Target.Row, 12)
Cells(Target.Row, 12) = ""
Application.EnableEvents = True
End If
If Target.Column = 12 Then
Application.EnableEvents = False
Cells(Target.Row, 9) = Cells(Target.Row, 9) - Cells(Target.Row, 10)
Cells(Target.Row, 12) = ""
Application.EnableEvents = True
End If
End Sub
Die Spalten 9 und 10 sollen durch Eingabe in die Spalten 11 und 12 aktualisiert werden.
Wenn ich jetzt die Spalten 9 und 10 schütze, indem ich die Spalten markiere und unter Zellen formatieren "gesperrt" auswähle und den Blattschutz aktiviere, bekomme ich folgende Fehlermeldung wenn ich in die Spalte 11 oder 12 was eingebe:
"Laufzeitfehler 1004 - Die Zelle, die sie versuchen zu ändern ist geschützt, und somit schreibgeschützt"
Betrifft: AW: Spalten schützen
von: GerdW
Geschrieben am: 18.09.2003 19:27:25
Schutz mit der Option: UserInterfaceOnly
dann kann Code weiterhin ausgeführt werden.
Gerd
Betrifft: AW: Spalten schützen
von: Michael
Geschrieben am: 18.09.2003 19:29:22
Wo kann ich das angeben "Schutz mit der Option: UserInterfaceOnly"?
Betrifft: AW: Spalten schützen
von: GerdW
Geschrieben am: 18.09.2003 19:57:23
Vielleicht mal einen Blick in die Hilfe riskieren, für solche
Kleinigkeiten brauchst du kein Forum.
Gerd
Betrifft: AW: Spalten schützen
von: Michael
Geschrieben am: 18.09.2003 21:24:11
Na klar, und wenn man eine etwas schwierigere Frage stellt antwortet keine Sau!!! Pfeife
Michael