Hallo lembrandt,
so wie ich as sehe, bleibt dir wohl nix Anderes übrig als vom Benutzer durchgeführte Formatierungen an den falschen Stellen per Makro rückgängig zu machen. z.B. indem du im Open-, BeforPrint-, oder Calculate-Ereignis einen Code wie diesen ausführst:
With Worksheets(1)
.EnableSelection = xlUnlockedCells
.Protect Password:="abc", AllowFormattingCells:=True, AllowFormattingRows:=True
.Rows("1:15").RowHeight = 12.75
.Range("A13").Interior.Color = vbYellow
End With
EnableSelection legt fest, dass nur die freigegebenen Zellen auch markiert werden dürfen. Damit verhinderst du in 95% der Fälle, dass ein Nutzer eine falsche Zelle formatiert. Gewiefte Nutzer lassen sich davon natürlich nicht abschrecken und kennen Mittel und Wege um das zu umgehen.
Mit Protect kannst du leider nur festlegen, dass entweder alles oder nichts formatiert werden darf. Immerhin ist das in Zeilen Spalten und Zellen unterteilt.
Deshalb solltest du eben am Ende alles so formatieren wie es vorher war, indem du die Formatierung fest im Code verankerst. Anders gehts leider nicht.
Gruß Mr. K.
|