Ich möchte den ungeschützten Inhalt eines geschützten Blatts innerhalb eines bestimmten Bereichs löschen. Wenn ich zum Beispiel VBA starte, werden die Inhalte von A1002: F1301 und G1002: AZ1301 gelöscht. Die genannten Bereiche sind ungeschützt. Ich möchte nur die Zelle zwischen diesen Bereich klar sein, aber nicht formatieren oder irgendeine andere Änderung.Inhalt des ungeschützten spezifischen Bereichs in einem geschützten Blatt löschen
0
A
Antwort
0
Da Ihr Beispiel Bereiche (zB A1002: F1301 und G1002: AZ1301) habe nicht wirklich keine nicht referenzierten Spalten oder Zeilen zwischen ihnen, ich werde Ihr Beispiel A1002 ändern: F1301 und H1002: AZ1301 die Blätter Spalte G nicht referenziert mit zwei Areas in einem nicht zusammenhängenden Bereich.
Verwenden Sie etwas Ähnliches wie eine der folgenden ersten beiden Methoden.
with worksheets("Sheet1")
.range("A1002:F1301, H1002:AZ1301").clearcontents
'alternative with Union
union(.range("A1002:F1301"), .range("H1002:AZ1301")).clearcontents
'do NOT use the following - it includes all the cells in between
.range("A1002:F1301", "H1002:AZ1301").clearcontents
end with
Die erste Methode ist eine Abkürzung für die Sekunde Union method. Beachten Sie den Unterschied zwischen dem ersten und dem dritten. Die dritte wird NICHT für Ihre Zwecke empfohlen, da sie alle Zellen zwischen den beiden Bereichen enthält (z. B. A1002: AZ1301).
Die Range.ClearContents method löscht nur die Werte im Gegensatz zu Range.Clear, die Werte und Formate löscht.
https://msdn.microsoft.com/en-us/library/office/ff835589.aspx –