Anzeige
Archiv - Navigation
1412to1416
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
Inhaltsverzeichnis

per VBA bestimmte Zellen schreibgeschützt machen

per VBA bestimmte Zellen schreibgeschützt machen
06.03.2015 10:20:31
Anton
Hallo zusammen!
Folgendes:
In Spalte A steht ein "Key" - X6,X5,X4,X3 beschreiben verschiedene Ebenen.
Jedoch sollen alle Zeilen, in denen ein X6,X5,X4,X3 steht, schreibgeschützt sein. Weder bearbeiten noch löschen soll funktionieren.
In den Zellen, in denen nun "AS" steht, kann auch etwas anderes stehen. Diese sollen jedoch alle NICHT schreibgeschützt sein.
Das Dokument selbst soll ohne Passwort zu öffnen sein.
Beispiel dazu:
https://www.herber.de/bbs/user/96192.xlsx
Ich dachte daran, das Pferd von hinten aufzuzäumen: Alles protecten, danach alles ausser X6/X5/X4/X3 Zeilen unprotecten.
Hat da jemand eine VBA Lösung?
Will das ganze in ein großes Makro integrieren, komme aber nicht auf die richtigen Formeln :/
Mit freundlichen Grüßen,
Anton Huber

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Zeilen ohne Markierung entsperren
06.03.2015 10:54:40
Klexy
Wenn links in Spalte A kein X steht, werden die verbundenen Zellen (ab Spalte B) gewählt und alle Zellen aller Zeilen, über die sich die verbundenen Zellen erstrecken, entsperrt.

Sub Schreibschutz_auf_XZeilen()
ActiveSheet.Unprotect "Bla" 'hier dein Passwort eingeben
Cells.Locked = True 'alle Zellen sperren
Cells.FormulaHidden = True
Range("A1").Select
Do While ActiveCell.Row  "X" Then ' wenn kein X links in Spalte A
ActiveCell.Offset(0, 1).Select
Selection.EntireRow.Locked = False ' entsperrt
Selection.EntireRow.FormulaHidden = False ' entsperrt
ActiveCell.Offset(1, -1).Activate
Else
ActiveCell.Offset(1, 0).Activate
End If
Loop
ActiveSheet.Protect "Bla" 'hier wieder dein Passwort. Am Ende wird das Blatt wieder geschützt
End Sub

Anzeige
AW: Zeilen ohne Markierung entsperren
06.03.2015 11:06:39
Anton
Vielen Dank, funktioniert einwandfrei.
Kann man evtl. noch eine kleine Msg Box integrieren, in der ich das Passwort festsetzen kann?
Es sind verschiedene Dateien und verschiedene Personen die dieses bearbeiten und ich würde ihnen gerne eine MsgBox bieten, in der sie ihr Passwort festlegen können.
MfG,
Anton Huber

AW: Zeilen ohne Markierung entsperren GELÖST
06.03.2015 11:21:19
Anton
hat sich geklärt, habs selbst geschafft! Bin anscheinend doch kein so VBA Anfänger mehr, wie ich mal dachte :-)
Danke für deine HIlfe!
Schönen tag wünsche ich.
MfG,
Anton Huber

AW: Zeilen ohne Markierung entsperren GELÖST
06.03.2015 14:32:11
Klexy
Sieht es so aus?

Sub Schreibschutz_auf_XZeilen()
Dim Passwort As Variant
Passwort = InputBox(Chr(13) & Chr(13) & "Bitte Passwort eingeben:" & Chr(13) & "", " _
Passwort")
On Error GoTo FalschesPW
ActiveSheet.Unprotect Passwort 'hier dein Passwort eingeben
GoTo RichtigesPW
FalschesPW:
MsgBox "Falsches Passwort"
Exit Sub
RichtigesPW:
'erst werden alle Zellen gesperrt
Cells.Locked = True
Cells.FormulaHidden = True
Range("A1").Select
Do While ActiveCell.Row  "X" Then ' wenn kein X links in Spalte A
ActiveCell.Offset(0, 1).Select
Selection.EntireRow.Locked = False ' entsperrt
Selection.EntireRow.FormulaHidden = False ' entsperrt
ActiveCell.Offset(1, -1).Activate
Else
ActiveCell.Offset(1, 0).Activate
End If
Loop
ActiveSheet.Protect Passwort 'hier wieder dein Passwort. Am Ende wird das Blatt wieder geschü _
tzt
End Sub

Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige