Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1176to1180
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeilen ausblenden - schnell und ohne Hilfsspalte?

Zeilen ausblenden - schnell und ohne Hilfsspalte?
Klaus
Hi Forum,
ich möchte in einem Bereich von knapp 2.000 Zeilen gezielt ganze Zeilen per Knopfdruck ausblenden.
Der erste Weg war, per FOR-NEXT Schleife die Ausblendebedingung Zeile für Zeile abzufragen und dann die Zeile auszublenden. Dauert Minuten.
Erste Optimierung: application.screenupdating und calculation ausschalten. Bringt schon was.
Zweite Optimierung: die auszublendenden Zeilen per UNION sammeln und am Ende auf einen Schlag ausblenden. Bringt nochmal deutlich was, ist aber immer noch langsam.
Letzter Stand: Ich habe eine Hilfsspalte T, in der die Bedingung zum Ausblenden per Formel abgefragt wird: =WENN(Bedingung;1/0;"") ergibt #DIV0! in den auszublendenden Zeilen. Diese blende ich nun auf einen Schlag und ohne jede Schleife aus mit ActiveSheet.Columns("T:T").SpecialCells(xlCellTypeFormulas, 16).EntireRow.Hidden = True
Das ganze dauert nichtmal 0,01 Sekunden - ich glaub, schneller gehts nicht.
Nur: Jetzt hab ich da diese blöde Hilfsspalte stehen. Hat jemand eine zündende Idee, ob das auch ohne Hilfsspalten geht?
Grüße,
Klaus M.vdT.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zeilen ausblenden - schnell und ohne Hilfsspalte?
15.09.2010 14:31:41
Gerd
Hallo Klaus,
Du kannst als letzte Codezeile mit ActiveSheet.Columns(20).Clear die >>blöde Hilfsspalte<< leeren
oder den Autofilter nehmen.
Gruß Gerd
AW: Zeilen ausblenden - schnell und ohne Hilfsspalte?
15.09.2010 14:38:14
JogyB
Hallo Klaus,
erstell die Hilfsspalte doch einfach temporär:
Sub ausBlenden()
Application.ScreenUpdating = False
With ActiveSheet
With Intersect(.Columns(20), .UsedRange.EntireRow)
.FormulaR1C1 = "=IF(RC2=1,1/0,"""")"
.SpecialCells(xlCellTypeFormulas, 16).EntireRow.Hidden = True
.ClearContents
End With
End With
Application.ScreenUpdating = True
End Sub

Die Bedingung der Formel musst Du natürlich ändern, das RC2=1 hier entspricht B2=1
Gruß, Jogy
Anzeige
AW: Zeilen ausblenden - schnell und ohne Hilfsspalte?
16.09.2010 09:31:08
Klaus
Hallo Gerd und Jogy,
danke für den Zaunpfahl ... ich bin schlicht nicht darauf gekommen, die Spalte per VBA zu löschen.
Manchmal sind es die einfachen Dinge im Leben :-)
Grüße,
Klaus M.vdT.

314 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige