Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Zelle nach Eingabe Automatisch sperren
#1
Hallo zusammen,

ich habe mir eine Tabelle gebaut und dort soll folgende Funktion hinterlegt sein:

Trägt jemand was in der Zelle ein, soll die Zelle gesperrt werden.

dies möchte ich mit einem Makro ermöglichen und habe mir das wie folgt geschrieben:

Private Sub Worksheet_Change(ByVal Target As Range)
Tabelle1.Unprotect "1234"
If VBA.IsEmpty(Target) Then
    Target.Locked = False
    Else
    Target.Locked = True
End If
Tabelle1.Protect "1234"

End Sub

nun ist es so, dass hier das Debug Fester erscheint mit der Meldung: Die Locked-Eigenschaft des Range-Objektes kann nicht festgelegt werden.

Wenn ich den Debugger öffne ist die Zeile Target.Locked = True gelb hinterlegt.

Was das komische ist, trage ich was in der Zelle ein erscheint die Fehlermeldung, aber wenn ich den Inhalt lösche dann wird die Zelle gesperrt.

hätte jemand einen Tipp für mich wo mein Fehler liegt ?

Danke für eure Hilfe
Antwortento top
#2
Hi,

kann ich nicht nachvollziehen: bei mir läuft dein Makro wie (offensichtlich) gewünscht.
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Antwortento top
#3
Nun habe ich den Fehler selbst gefunden.

Es funktioniert nicht wenn Zellen verbunden sind.

dann wäre meine frage wie müsste ich das Makro abändern damit es auch bei verbundenen Zellen Funktioniert?
Antwortento top
#4
... dann hebe die Zellverknüpfung auf. Google mal nach "verbundene Zellen" und Probleme damit.
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Antwortento top
#5
Moin,

in die Fachfrage werde ich mich mangels ausreichenden Kenntnissen nicht einmischen. Was die verbundenen Zellen anbelangt, kann ich dir aber nur raten, diese aufzulösen. Zum besseren Verständnis warum, hier etwas Lesestoff: https://www.clever-excel-forum.de/Thread...oder-Segen
Gruß Günter
Jeder Fehler erscheint unglaublich dumm,
wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antwortento top
#6
Ok Aufheben wäre eine Lösung allerdings müsste ich dann das Makro auf eine Range beschränken.

A:12 bis Z:30

wäre dies möglich ?
Antwortento top
#7
Hi,

setze zu Beginn deines Macros:

PHP-Code:
If Application.Intersect(TargetRange("A12:Z30")) Is Nothing Then Exit Sub 
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste