ich habe eine sehr breite Excel Tabelle.
Pro Zeile sind aber bei weitem nicht alle Zellen ausgefüllt.
In mehreren aufeinanderfolgenden Zeilen stehen zusammegehörende Daten. Kleine "Zeilenpakete", 2-20 Zeilen.
Um Einträge in diesen Zeilen übersichtlicher zu darzustellen, also weniger scrollen zu müssen, würde ich gerne Spalten, in denen sich leere Zellen befinden ausblenden lassen.
Dazu würde ich gerne die kompletten Zeilen markieren und dann ein Makro drüberlaufen lassen.
Bisher konnte ich mir das hier zusammenbasteln:
Sub SpaltenAusblenden()
Dim Spalte As Integer
Dim SpalteEnd As Integer
With Tabelle1
SpalteEnd = .UsedRange.Columns.Count
For Spalte = 1 To SpalteEnd
If .Cells(ActiveCell.Row, Spalte).Value = "" Then
.Columns(Spalte).Hidden = True
Else
.Columns(Spalte).Hidden = False
End If
Next Spalte
End With
End Sub
Das Problem ist, dass sich das Makro mit ActiveCell.Row immer nur für die erste markierte Zeile interessiert. Gibt es einen Befehl, der den ganzen markierten Zeilenbereich berücksichtigt?
Hier eine Beispieldatei
https://www.herber.de/bbs/user/132522.xlsm
P.S.: Ich kann Makros "lesen" (zur Not mit Einzelschritt), aber nicht selber schreiben. Meistens kopiere ich mir Fragmente aus dem Internet zusammen und passe sie auf meine Tabellen an, was in aller Regel ganz gut klappt. Zu dieser Problemstellung konnte ich bisher aber nichts sinnvolles finden.