Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1000to1004
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

Löschen von Worksheets zwecks Initialisierung

Löschen von Worksheets zwecks Initialisierung
18.08.2008 12:31:09
Worksheets
Hallo,
häufig besteht der Bedarf, ein Worksheet vor Programmstart, bis auf die überschriften zu löschen. Grundsätzliche Bedingung ist - kein Select des Sheets darf nötig sein.
Ich benutze hierfür:

Sheets(ARBEITSBLATT).Range(loeschbereich).ClearContents


Leider hat diese Methode einen riesen Nachteil, denn wenn jemand einen Auto-Filter nachträglich einbaut und eine Selektion stehen lässt, werden alle nicht selektierten nicht gelöscht!
Ein sequentielles löschen jeder Zeile, würde die Lösung bringen, jedoch ist das viel zu langsam.
- a) Gibt es anstatt .ClearContents ein Werkzeug das auch die verdeckten Zeilen löscht?
- b) Notlösung: Eine Funktion, die abfragt ob ein Autofilter vorhanden ist, und ihn auf alles Anzeigen schaltet
- c) oder zur variante b) wenn er ihn nicht auf alles Anzeigen schalten kann, dann eben den Auto-Filter ganz raus werfen.
Gruß Eddie

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

Betreff
Datum
Anwender
Anzeige
AW: Löschen von Worksheets zwecks Initialisierung
18.08.2008 12:43:00
Worksheets
Hallo,
zu b)
If Sheets(ARBEITSBLATT).FilterMode Then Sheets(ARBEITSBLATT).ShowAllData
Gruß
Rudi

AW: Löschen von Worksheets zwecks Initialisierung
18.08.2008 12:44:47
Worksheets
das natürlich noch besser ^^

AW: Löschen von Worksheets zwecks Initialisierung
18.08.2008 13:19:30
Worksheets
Hallo,
ich sage schon mal danke an Alle. Diese Variante von Rudi, scheint mir das Optimum im meinem Fall zu sein.
Gruß Eddie

AW: Löschen von Worksheets zwecks Initialisierung
18.08.2008 12:44:02
Worksheets
Wenn ein Filter an ist, löscht er die Filter und setzt ihn neu was automatisch alle voreinstellungen wegnimmt. (Range für die Spalten entsprechend anpassen)
If Sheets(ARBEITSBLATT).AutoFilterMode Then Range("A1").AutoFilter
Range("A1:B1").AutoFilter

AW: Löschen von Worksheets zwecks Initialisierung
18.08.2008 12:47:00
Worksheets
Hallo Eddie,
angenommen, die Spaltenüberschriften stehen in A1:B1 und der Löschbereich ist A2:B7, beides in Tabelle1:

Sub Loeschen()
Set loeschbereich = Worksheets("Tabelle1").Range("A2:B7")
If Range("A1").AutoFilter = True Then
Range("A1").AutoFilter
End If
loeschbereich.ClearContents
End Sub


Gruß
Martin

Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige