Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 14:18:05
28.04.2024 13:43:14
Anzeige
Archiv - Navigation
1924to1928
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

Zellen vor überschreiben schützen

Zellen vor überschreiben schützen
16.03.2023 15:05:30
Marcus

Hallo,

ich habe eine Mappe mit mehreren Blättern erstellt.
In den vorhandenen Zellen, können die Mitarbeiter einen Wert aus einem Dropdown auswählen.
Wie kann ich es nun erreichen, dass die Zelle für die Bearbeitung des nächsten Mitarbeiters gesperrt ist, so dass eine nachträgliche Änderung oder Löschung nicht mehr möglich ist.
Um es kurz zu machen, jede Zelle kann bearbeitet werden so lange sie ungefüllt ist. Hat ein Mitarbeiter eine Eintragung vorgenommen, soll die Zelle gesperrt sein.
Gewünschte Änderungen soll dann nur noch ich vornehmen können.

Danke für Euer Feedback im Voraus
Marcus

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen vor überschreiben schützen
16.03.2023 15:16:17
Daniel
Hi
schritt 1:
für die Zellen, die geändert werden dürfen, zunächst im Zellformat - Schutz den Haken bei "gesperrt" rausnehmen.
Schritt 2: Blattschutz aktivieren (erstmal ohne Passwort)
schritt 3:
dieses Makro ins modul des Tabellenbaltts einfügen:
Private Sub Worksheet_Change(ByVal Target As Range)
Me.Unprotect
If Target.CountLarge = 1 Then
    If Not Intersect(Target, Cells.SpecialCells(xlCellTypeAllValidation)) Is Nothing Then
        If Target.Value > "" Then
            Target.Locked = True
        End If
    End If
End If
Me.Protect
End Sub
dieser Code setzt dann den Gesperrt-Haken, wenn in einer Zelle mit DropDown ein Wert eingefügt wird.
danach muss dann der Blattschutz aufgehoben werden, um diese Zelle zu ändern.
Gruß Daniel


Anzeige
AW: Zellen vor überschreiben schützen
16.03.2023 15:28:32
GerdL
Hallo,
erst die Zelle entsperren, Zellenadresse im Code anpassen u. testen.
Private Sub Worksheet_Change(ByVal Target As Range)

Static old As Variant

If Target.Address(0, 0) = "A1" Then
    Application.EnableEvents = False
    If old > "" Or Target.Locked = True Then
        Application.Undo
    Else
        old = Target
        Target.Locked = True
    End If
    Application.EnableEvents = True
End If

End Sub
Gruß Gerd


AW: Zellen vor überschreiben schützen
17.03.2023 09:20:09
Marcus
Erstmal Danke für Eure Hilfe.

Habe beide Codes probiert und bekomme die Fehlermeldung "Argument ist nicht optional".
@gerd Habe die Zelle B4 angepasst und getestet statt bei Dir A1.

Könnt ihr mir bitte nochmals weiterhelfen?

VG
Marcus


Anzeige
AW: Zellen vor überschreiben schützen
17.03.2023 10:25:56
Daniel
Hi
ich bekomme diese Fehlermeldung nicht.
Daher kann ich dir so nicht weiterhelfen.
du müsstst uns schon genauer zeigen, was du das programmiert hast, am einfachsten durch hochladen deiner Datei, in der der Fehler vorkommt.
Gruß Daniel


AW: Zellen vor überschreiben schützen
20.03.2023 15:27:44
Daniel
Hi
der Code muss ins Modul des Tabellenblatts, für das das gelten soll, also ins Modul 20.03 und 21.03
das Makro muss ja automatisch ausgeführt werden, wenn der Anwender in dem Blatt was ändert, das funktioniert nicht, wenn der code in einem allgemeinen Modul liegt (Modul1).
Und wenn ich den Code rüber kopiere, funktioniert es, wie von dir gewünscht.
Gruß Daniel

Anzeige

258 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige