Warum führt Range("D5:D6", "C13:D14", "C16:D17").Locked = True in Excel VBA zum Fehler 'falsche Anzahl an Argumenten oder ungültige Zuweisung zu einer Eigenschaft'?

Antwort vom

Der Fehler „falsche Anzahl an Argumenten oder ungültige Zuweisung zu einer Eigenschaft“ tritt auf, weil die Syntax von `Range` in deinem Beispiel nicht korrekt ist. **Erklärung:** Die `Range`-Funktion in VBA akzeptiert entweder: - Einen einzelnen Bereich als String, z. B. `Range("A1:B2")` - Zwei Bereiche als zwei Argumente, z. B. `Range("A1", "B2")` (ergibt den Bereich von A1 bis B2) - Zwei Bereiche als zwei Argumente, z. B. `Range("A1:B2", "C3:D4")` (ergibt einen zusammengesetzten Bereich) **Aber:** Du hast **drei** Argumente übergeben: `Range("D5:D6", "C13:D14", "C16:D17")` Das ist nicht erlaubt, da `Range` maximal **zwei** Argumente akzeptiert. **Korrekte Vorgehensweise für mehrere, nicht zusammenhängende Bereiche:** Du kannst mehrere Bereiche mit der `Union`-Funktion zusammenfassen: ```vba Union(Range("D5:D6"), Range("C13:D14"), Range("C16:D17")).Locked = True ``` **Fazit:** Der Fehler entsteht, weil du zu viele Argumente an `Range` übergibst. Verwende stattdessen `Union`, um mehrere Bereiche zusammenzufassen. Weitere Infos: [Range-Objekt (Microsoft)](https://learn.microsoft.com/de-de/office/vba/api/excel.range) [Union-Methode (Microsoft)](https://learn.microsoft.com/de-de/office/vba/api/excel.application.union)

Kategorie: Technik Tags: Excel VBA Range

Verwandte Fragen

Was bedeutet diese Excel-Formel?

Die Formel erzeugt eine Folge von Datumswerten im 2‑Wochen-Abstand und zeigt sie nur dann an, wenn das berechnete Datum vor einem Stichtag kurz vor dem 1. September von aktJahr liegt. Was die Formel k...

Was bedeutet „Größenbegrenzung der Ergebnismenge überschritten“ in einem SAP-BW-Query in Excel?

Das bedeutet: Dein SAP-BW-Query würde mehr Daten an Excel zurückgeben, als für die Ergebnismenge erlaubt ist – deshalb bricht die Abfrage ab. In der Praxis heißt das fast i...

Wie übertrage ich Adressdaten aus Excel in Avery Zweckform 3481 in Word?

Am schnellsten geht das über den Seriendruck in Word: Excel-Liste sauber vorbereiten, Avery/Zweckform 3481 als Etikettenformat wählen und dann die Adressfelder mit der Excel-Datei verknü...