Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
304to308
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
304to308
304to308
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ein-/Ausschalten Zellschutz über VBA

Ein-/Ausschalten Zellschutz über VBA
03.09.2003 16:13:39
Torsten K.
Hallo beisammen,

in meinen Kostenbudget- und Umsatzbudget-Dateien gibt es ein Menge Eingabefelder für den User. Ab einem bestimmten Zeitpunkt sollen keine Eingaben mehr möglich sein, daß heißt, die Zellen müssen mit einem Zellschutz versehen werden. Das möchte ich natürlich nicht manuell machen und habe dafür, auch mit Eurer Hilfe, eine VBA-Anweisung gebastelt, die im Kostenbudget auch tadellos läuft. Die zu schützenden Zellen liegen alle untereinander, so daß ich einen Bereich benennen konnte (z.B. WS "Eingaben", Bereich A5:A105 (Name:("EingEST"), den ich über das Makro nun schützen kann:

Private Sub cmb_EingFeldProt_Click()
Application.ScreenUpdating = False
Dim Arr, i%
If GetPassword = True Then
Arr = Array("Eingaben", "ET120", "ET140", usw....)
For i = LBound(Arr, 1) To UBound(Arr, 1)
Sheets(Arr(i)).Unprotect password:="Kennwort"
Next i
With Sheets("Eingaben")
.Range("EingEST").Locked = True
.Range("EingBU").Locked = True
End With
With Sheets("ET120")
.Range("EingET120").Locked = True
End With
With Sheets("ET140")
.Range("EingET140").Locked = True
End With
usw.....
Arr = Array("Eingaben", "ET120", "ET140", usw....
For i = LBound(Arr, 1) To UBound(Arr, 1)
Sheets(Arr(i)).Protect password:="Kennwort"
Next i
Else
MsgBox "Password ist falsch"
End If
Application.ScreenUpdating = True
End Sub


Beim Umsatzbudget habe ich allerdings ein Problem, weil die Eingabefelder für den User zwar untereinander liegen, aber immer wieder durch Zwischensummen voneinander getrennt sind. Bei der Zellschutzaktivierung wäre es kein Problem, weil diese Zwischensummen ohnehin schon gesperrt sind. Bei einem Makro zum Entsperren würden dann aber auch diese Zellen entsperrt, und das darf nicht sein. Den zu schützenden Zellen einen Bereich zuzuweisen, funktioniert aufgrund der Anzahl der Zellen (ca. 160) leider nicht. Es sei denn, ich benenne 160 Bereiche, das kann aber doch nicht die Lösung sein, oder?
Hat jemand eine Idee, wie ich hier weiterkomme?
Vielen Dank im voraus für Eure Anregungen und Tipps.

Gruß
Torsten

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ein-/Ausschalten Zellschutz über VBA
03.09.2003 17:34:33
Michael Scheffler
Hi,

um einen Namen zu vergeben, muss der Bereich doch nicht zusammenhängen?

Gruß

Micha
AW: Ein-/Ausschalten Zellschutz über VBA
03.09.2003 18:17:44
Torsten K.
Hallo Michael,

da hast Du Recht. Aber über die Funktion Einfügen->Namen->Definieren kann ich nur max. 11 Bereiche pro Namen angeben. Aktiviere ich mehr Bereiche und will diese hinzufügen, erhalte ich von Excel eine Fehlermeldung. Daher meine Frage, ob es Alternativen gibt.

Gruß

Torsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige