Ich habe ein Arbeitsblatt, das ich meinen Mitarbeitern ausfülle, und ich habe Zellen berechnet, die ich sperren möchte, damit sie sie nicht ändern können. Ich habe die Zellen und die ausgewählten Eigenschaften ausgewählt und sichergestellt, dass das Kontrollkästchen "Sperren" aktiviert ist. Wenn ich das Arbeitsblatt/die Arbeitsmappe beschützte, funktionierte der "Export zu csv" Makroknopf nicht mehr. Um das Makro zu aktivieren abgeschlossen werden eingefügt ich diesen VB-Code in die Arbeitsmappe:Wie sperre ich Zellen, die Formeln enthalten, aber trotzdem Makros funktionieren lassen?
Private Sub Workbook_Open()
Dim wSheet As Worksheet
For Each wSheet In Worksheets
wSheet.Protect Password:="password", _
UserInterFaceOnly:=True
Next wSheet
End Sub
Das funktionierte aber hatte die unbeabsichtigte Nebenwirkung meine gesperrten Formeln erlauben zu können, auch bearbeitet werden, obwohl sie gesperrt wurden. Nur Zellen, die keine Formelwerte enthalten, blieben gesperrt. Was ist der richtige Weg, um Makros zu erlauben, aber trotzdem Formelzellen zu sperren?
Möglicherweise müssen Sie im Formelblock den Wert ".Value = Value" eingeben und die Formeln mit '.Formula =" ... "erneut eingeben, wenn die Zellen für neue Daten neu berechnet werden sollen. Das Ereignis sub Worksheet_Calculate wird als "Makro" betrachtet. – Jeeped
@Jeeped Was ist, wenn die 'UserInterFaceOnly' am Ende des Makros geändert werden soll. Bitte werfen Sie einen Blick auf meine Antwort und lassen Sie mich wissen, ob das funktioniert. Ich habe gerade keinen Zugang zu Excel, um es zu testen. – Masoud
@Masoud - Workbook_Open befindet sich direkt neben dem Kopf des ThisWorkbook-Codeblatts. Ich bin mir nicht sicher, ob du es nennen kannst. – Jeeped