Thomas Mangold
2008-07-17 22:11:44 UTC
Hallo,
ich lasse in einem komplexen Dokument mit folgendem Code alle Spalten
ausblenden, die kein X in der ersten Zeile stehen haben:
For Each cell In Range(Cells(1, 2), Cells(1, 256))
If UCase(cell.Value) = "X" Then
cell.EntireColumn.Hidden = False
Else: cell.EntireColumn.Hidden = True
End If
Next cell
Analog gehe ich mit den Zeilen vor, ich lasse alle Zeilen ausblenden,
deren Element in der ersten Spalte kein X hat:
.
cell.EntireRow.Hidden = False
.
Das funktioniert. Allerdings sehr langsam. Gibt es eine Möglichkeit,
dies zu beschleunigen.
Eine Idee wäre, die Spalten zu merken, die ausgeblendet werden sollen
und dann alle auf einmal ausblenden. Nur geht bei
ActiveSheet.Columns(Spalte).Hidden = False
darf Spalte nur einen zusammenhängenden Bereich umfassen.
Gruß
Thomas
ich lasse in einem komplexen Dokument mit folgendem Code alle Spalten
ausblenden, die kein X in der ersten Zeile stehen haben:
For Each cell In Range(Cells(1, 2), Cells(1, 256))
If UCase(cell.Value) = "X" Then
cell.EntireColumn.Hidden = False
Else: cell.EntireColumn.Hidden = True
End If
Next cell
Analog gehe ich mit den Zeilen vor, ich lasse alle Zeilen ausblenden,
deren Element in der ersten Spalte kein X hat:
.
cell.EntireRow.Hidden = False
.
Das funktioniert. Allerdings sehr langsam. Gibt es eine Möglichkeit,
dies zu beschleunigen.
Eine Idee wäre, die Spalten zu merken, die ausgeblendet werden sollen
und dann alle auf einmal ausblenden. Nur geht bei
ActiveSheet.Columns(Spalte).Hidden = False
darf Spalte nur einen zusammenhängenden Bereich umfassen.
Gruß
Thomas