396 Aufrufe
Gefragt in Tabellenkalkulation von addeguddi Experte (2.5k Punkte)
Hallo und einen wunderschönen Tag

vielleicht hat jemand eine Lösung für mich.

Habe von einer anderen Tabelle ein Makro zum löschen mit der Zelle Legs Löschen zum anklicken kopiert und in einer neuen Liste eingefügt  und die Zellen die gelöscht werden sollen verändert. Wenn Blattschutz ausgeschalte ist funktioniert das einwandfrei. Doch es soll funktionieren wenn Blattschutz eingeschaltet ist.

Leider erscheint der Fehler: Laufzeitfehler 1004

Das ist das Makro: was muss ich ändern?

Sub Spielerlöschen()

'

' Spielerlöschen Makro

'

'

    Range("C7:I18,L7:R18,U7:AA18,AD7:AJ18,AM7:AS18,AV7:BB18,BF7:BL18,BP7:bv18").Select

    Selection.ClearContents

    Range("c7").Select

    Range("C6").Select

    ActiveCell.FormulaR1C1 = ""

    Range("C7").Select

End Sub

Für die Hilfe Danke ich jetzt schon einmal

Gruß Adde

4 Antworten

+1 Punkt
Beantwortet von m-o Profi (22.8k Punkte)
ausgewählt von halfstone
 
Beste Antwort

Hallo Adde,

ich nehme mal an, dass das Makro in dem aktiven Blatt ausgeführt wird.

Füge am Anfang die Zeile

ActiveSheet.Unprotect "Passwort"

ein. Hast du für den Blattschutz ein Passwort vergeben, dann musst das hier zwischen den beiden Hochkomma eingeben. Hast du kein Passwort, dann reicht

ActiveSheet.Unprotect

Um am Ende des Makro das Blatt wieder zu schutzen nutze den Befehl

ActiveSheet.Protect "Passwort"

bzw. ohne Passwort

ActiveSheet.Protect

Gruß

M.O.

0 Punkte
Beantwortet von addeguddi Experte (2.5k Punkte)
Hallo schönen Guten Morgen M. O.

vielen lieben Dank. Es funktioniert Toll das du mir diese Lösung zukommen hast lassen

Gruß Adde
+1 Punkt
Beantwortet von beverly_ Experte (3.3k Punkte)

Hi Adde,

mal nur ein Tipp am Rande: auf Select kann zu 99% aller Fällte verzichtet werden, denn der Cursor ist kein Hund, der auf dem Tabellenblatt Spazieren geführt werden muss wink

Aus diesem Grund würde dein komplettes Makro so aussehen können:

Sub Spielerlöschen()
    ActiveSheet.Unprotect
    Range("C6,C7:I18,L7:R18,U7:AA18,AD7:AJ18,AM7:AS18,AV7:BB18,BF7:BL18,BP7:bv18").ClearContents
    ActiveSheet.Protect
End Sub

Die Zelle C6 kannst du auch gleich mit einbinden.


Bis später, Karin

0 Punkte
Beantwortet von
Vielen lieben Dank,

für deine Antwort.

Klappt wauch wunderbar.

Gruß Adde
...