Excel-Makro: Alle Spalten in Tab1!Alle ausblenden, wobei „Alle“ als =INDIREKT(Tab2!B5):INDIREKT(Tab2!B6) definiert ist?

Antwort vom

Ja. Das geht per VBA, indem der definierte Name `Alle` ausgewertet und die darin enthaltenen Spalten ausgeblendet werden. ```vba Sub SpaltenAusblenden_Alle() Dim rng As Range On Error GoTo Fehler Set rng = ThisWorkbook.Names("Alle").RefersToRange If rng.Worksheet.Name = "Tab1" Then rng.EntireColumn.Hidden = True End If Exit Sub Fehler: MsgBox "Der definierte Name 'Alle' konnte nicht als Bereich aufgelöst werden.", vbExclamation End Sub ``` Wichtig: - `Alle` muss als **definierter Name** in Excel existieren. - Die Formel `=INDIREKT(Tab2!B5):INDIREKT(Tab2!B6)` muss am Ende einen gültigen Bereich in `Tab1` ergeben, z. B. `Tab1!C:C:Tab1!H:H` bzw. praktisch einen zusammenhängenden Spaltenbereich. - `INDIREKT` in einem Namen kann in VBA über `Names("Alle").RefersToRange` verwendet werden, solange der Bezug gültig ist. Falls `Alle` nur auf `Tab1` gelten soll, ist auch direkt möglich: ```vba Sub SpaltenAusblenden_Alle_Direkt() Worksheets("Tab1").Range(ThisWorkbook.Names("Alle").RefersToRange.Address).EntireColumn.Hidden = True End Sub ``` Zum Einblenden aller Spalten in `Tab1`: ```vba Sub AlleSpaltenEinblenden() Worksheets("Tab1").Columns.Hidden = False End Sub ```

Kategorie: Technologie Tags: Excel Makro Spalten

Verwandte Fragen

Excel-Makro: Spalten E:G per Button ein- und ausblenden?

Ja. Verwende dieses Makro und weise es dem Button zu: vba Sub SpaltenEGUmschalten() Columns("E:G").EntireColumn.Hidden = Not Columns("E").EntireColumn.Hidden End Sub So funktio...

Excel-Makro: Im Bereich B10:B20, wenn der IndentLevel in Spalte B = 1 ist, dann in dieser Zeile in B:O oben eine dünne Rahmenlinie setzen?

vba Sub RahmenObenBeiIndent1() Dim ws As Worksheet Dim c As Range Set ws = ActiveSheet For Each c In ws.Range("B10:B20") If c.IndentLevel = 1 Then With ws.Range(ws.Cells(c.Row, &q...

Kann man mit einem Excel-Makro abfragen, ob und wie stark ein Zellinhalt eingerückt ist?

Ja. In Excel-VBA kannst du die Einrückung einer Zelle über IndentLevel abfragen. Beispiel: vba Sub EinrueckungPruefen() Dim wert As Long wert = Range("A1").IndentLevel MsgB...

Lässt sich die Excel-Warnung „Pivot enthält schon Daten“ per Makro ausschalten?

Ja. Die Meldung lässt sich im Makro meist mit deaktivierten Excel-Warnungen unterdrücken: vba Application.DisplayAlerts = False ' Pivot-Aktion hier, z. B. Aktualisieren / Ersetzen / L...

Kann man mit einem Excel-Makro den Filter einer Pivot-Tabelle ändern?

Ja. Mit einem Excel-Makro (VBA) kannst du den Filter einer Pivot-Tabelle ändern, zum Beispiel: Berichtsfilter setzen einzelne Pivot-Felder filtern bestimmte Elemente ein-/ausblenden Datums- oder...

Excel-Makro: Einfärbung der Zellen B10:D15 aufheben?

Ja. In VBA z. B. so: vba Range("B10:D15").Interior.Pattern = xlNone Alternativ: vba Range("B10:D15").Interior.ColorIndex = xlColorIndexNone Falls auch andere Formatierungen e...

Excel-Makro: Kann bei einer If-Schleife mit nur einer Anweisung nach Then und Else alles in derselben Zeile stehen?

Ja. In VBA/Excel-Makros darf eine einzeilige If-Anweisung so geschrieben werden: vba If Bedingung Then AnweisungElse Mit Else in derselben Zeile: vba If x > 0 Then y = 1 Else y = 2 Sobald na...

Wie löscht man mit einem Excel-Makro im Bereich B10:H100 alle Zellrahmen?

vba Range("B10:H100").Borders.LineStyle = xlNone

Ist dieser Excel-VBA-Code korrekt, um Spalten auszublenden und einen Bereich wieder einzublenden?

Nein. Korrekt ist bei Columns die Angabe von Spaltenbuchstaben oder Spaltennummern als Bereich, nicht "spaltevon:spaltebis" wörtlich. Beispiel: vba With Sheets("Tab1") .Co...

Excel: Wie ruft man mit einem Makro ein anderes Makro auf und übergibt dabei die Zahl 1 oder 2 sowie die Zelladresse A4?

Ja. In VBA übergibst du Werte als Parameter. vb Sub Starter() Call ZielMakro(1, Range("A4").Address) Call ZielMakro(2, Range("A4").Address) End Sub Sub ZielMakro(ByVal num...