Der Fehler liegt daran, dass du die Variable `zeilen` als `String` deklarierst, aber die Funktion `Rows(zeilen).Hidden = True` einen Bereich erwartet, der als Zeilenreferenz interpretiert werden kann.... [mehr]
Der Fehler in deinem VBA-Code liegt daran, dass die Variable `rge` nicht deklariert wurde. In VBA solltest du Variablen immer deklarieren, und für Zellbereiche ist der Typ `String` oder besser gleich `Range` geeignet. Außerdem ist es besser, die Variable als `String` zu deklarieren, wenn du sie als Adress-Text verwendest. Hier ist die korrigierte Version: ```vba Dim i As Integer Dim rge As String For i = 1 To 4 rge = Choose(i, "F5:L200", "D5:D6", "C13:D14", "C16:D17") Range(rge).Locked = True Next i ``` **Weitere Hinweise:** - Wenn du `Option Explicit` verwendest (was empfohlen wird), ist die Deklaration zwingend. - Falls du mit mehreren Arbeitsblättern arbeitest, solltest du das Arbeitsblatt explizit angeben, z.B. `Worksheets("Tabelle1").Range(rge).Locked = True`. **Zusammengefasst:** Der Fehler ist die fehlende Deklaration der Variablen `rge`. Füge `Dim rge As String` am Anfang deines Codes hinzu.
Der Fehler liegt daran, dass du die Variable `zeilen` als `String` deklarierst, aber die Funktion `Rows(zeilen).Hidden = True` einen Bereich erwartet, der als Zeilenreferenz interpretiert werden kann.... [mehr]
In Excel-VBA verlässt du eine For/Next-Schleife vorzeitig mit dem Befehl `Exit For`. Sobald dieser Befehl ausgeführt wird, wird die Schleife sofort beendet und der Code nach der Schleife for... [mehr]
Ja, auch wenn innerhalb einer If-Anweisung in einem Excel-Makro (VBA) ein `Exit Sub` steht, muss das zugehörige `End If` trotzdem geschrieben werden. Die Syntax von VBA verlangt, dass jede mit `I... [mehr]
Wenn ein Makro in Excel mit einem Fehler abbricht, kann es passieren, dass Excel in den "Fehlerbehandlungsmodus" (Debug-Modus) wechselt. In diesem Modus sind bestimmte Funktionen, wie das St... [mehr]
Um in allen Arbeitsblättern einer Excel-Arbeitsmappe – auch in ausgeblendeten – das Gitternetz auszublenden, kannst du folgendes VBA-Makro verwenden: ```vba Sub GitternetzInAllenBlae... [mehr]
Hier ist ein VBA-Makro, das in allen Arbeitsblättern einer Excel-Arbeitsmappe sowohl die Gitternetzlinien als auch die Überschriften (Zeilen- und Spaltenköpfe) ausblendet: ```vba Sub G... [mehr]
Um zwei Variablen von einem Excel-Makro an ein anderes zu übergeben, gibt es mehrere Möglichkeiten. Die gängigste und sauberste Methode ist, das zweite Makro als **Sub** oder **Function... [mehr]
Ja, der Befehl `Application.ScreenUpdating = False` gilt global für die gesamte Excel-Anwendung und damit auch für alle Makros, die danach ausgeführt werden – unabhängig davo... [mehr]
Um in einem Excel-Makro (VBA) zu prüfen, ob das aktive Blatt das Blatt mit dem Namen "Projekt" ist, kannst du folgenden Code verwenden: ```vba If ActiveSheet.Name = "Projekt"... [mehr]
Der Fehler 400 in Excel-Makros ist ein allgemeiner Laufzeitfehler, der oft auftritt, wenn etwas im Code nicht wie erwartet funktioniert. Dass der Fehler nur beim Starten über den Button und nicht... [mehr]