Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
532to536
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
532to536
532to536
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Beim Aktivieren d. Tab best. Zeilen ausblenden

Beim Aktivieren d. Tab best. Zeilen ausblenden
16.12.2004 16:08:57
Fritz
Hallo VBA-Spezialisten,
wer kann mir Hilfe anbieten?
Ich möchte, dass beim Aktivieren eines Tabellenblattes alle Zeilen ausgeblendet werden, in denen in der Spalte H die Zahl 1 eingetragen ist.
Für eure Hilfen schon jetzt vielen Dank.
Gruß
Fritz

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beim Aktivieren d. Tab best. Zeilen ausblenden
paula
Hi Fritz
das sollte helfen

Private Sub Worksheet_Activate()
Dim cell
For Each cell In Range("H:H")
If cell = 1 Then cell.EntireRow.Hidden = True
Next
End Sub

Gruss paula
AW: Beim Aktivieren d. Tab best. Zeilen ausblenden
Fritz
Hi Paula,
vielen Dank, das Ganze funktioniert eigentlich ganz prima.
Dennoch stören mich zwei Kleinigkeiten, die ich - wenn möglich - gerne ändern wollte:
Wenn relativ viele Zeilen ausgeblendet werden, dauert das ziemlich lange mit der etwas störenden Nebenwirkung, dass diese Aktivität auch noch am Bildschirm verfolgt werden kann.
Das Makro wird auch dann noch einmal in vollem Umfang ausgeführt, obwohl das eigentlich nicht erforderlich wäre, wenn z.B. keine weiteren Zeilen auszublenden sind (wenn bei mehrmaligem "Aufrufen" der Tabelle jeweils keine weiteren "X" in die Spalte H eingefügt wurden.
Kann man da noch etwas verbessern?
Gruß
Fritz
Anzeige
Letzte Fragen noch offen o.T.
Fritz
AW: Letzte Fragen noch offen o.T.
P@ulchen
Hi Fritz,
um das Makro schneller laufen zu lassen, kannst Du die Bildschirmaktualisierung ausschalten. Weiterhin würde ich den Code nicht über alle Zellen laufen lassen, sondern die letzte belegte Zelle in Spalte H ermitteln und die Prüfung dann nur bis zu dieser Zelle durchführen.


Private Sub Worksheet_Activate()
Dim cell As Range
Dim hRow As Long
Application.ScreenUpdating = False
Sheets("Tabelle1").Activate
hRow = Range("H65536").End(xlUp).Row
For Each cell In Range("H1:H" & hRow)
If cell = 1 Then cell.EntireRow.Hidden = True
Next
Application.ScreenUpdating = True
End Sub


Gruß aus Leipzig
P@ulchen
Das Forum lebt auch von den Rückmeldungen !
Anzeige
AW: Letzte Fragen noch offen o.T.
Fritz
Hi Paulchen,
vielen Dank für Deine Hilfe. Prima Lösung
Gruß
Fritz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige