Wie lock Excel-Zellen in VBA?

Ich habe ein Excel-Arbeitsblatt, das wirkt wie eine Anwendung mit Formular-Steuerelement-Schaltflächen, so dass Anwender zu 'navigieren' durch die Datensätze. Erste, Vorherige, Nächste & Letzten Zyklus entsprechend durch eines der Arbeitsblätter Datensätze, die Darstellung der Werte in "meine" form " - Arbeitsblatt.

Werden, wenn die Benutzer nicht Bearbeiten oder Hinzufügen-Modus, ich möchte das sperren der Zellen zu verhindern, dass Benutzer von der änderung der Inhalte.

Habe ich versucht Range("A1:O24").Locked = True, aber ich bin immer noch in der Lage, geben Sie neue Werte in die Zellen.

Jemand wissen, wie dies zu erreichen? Muss ich meinen vba-code zuweisen können neue Werte in die Zellen als Benutzer 'Navigation', sondern um zu verhindern, dass Benutzer von der Eingabe neuer Werte, es sei denn, im Hinzufügen oder Bearbeiten-Modus.

haben Sie gesehen, this? es gibt eine auskommentiert 'ws.Protect userinterfaceonly:=True im VBA-Lösung, die ziemlich viel sperren der Benutzer-Schnittstelle, und dennoch können Sie Zellen Bearbeiten von VBA-subs.
Kleines Wort der Warnung jedoch - die UserInterfaceOnly Eigenschaft ist nicht mit der Datei gespeichert! Deshalb, jedes makro wird ausgeführt, in der Frage, wenn Sie eine Datei öffnen - es sei denn, Sie verwenden das Open-Ereignis re-setzen Sie die Eigenschaft!

InformationsquelleAutor Analytic Lunatic | 2013-06-14

Schreibe einen Kommentar