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

Spalten filtern per Makro

Spalten filtern per Makro
18.07.2022 16:21:57
Tobi
Hallo,
ich habe - dank der superfreundlichen Hilfe hier im Forum - ein Makro, dass die aktuelle Seite unserer Arbeitsmappe per CSV exportiert.
Der Code ist:

Sub Makro9()
Dim Pfad As String, Datei As String
Pfad = "Z:\offizielle Dokumente - Vorlagen\11 - Produktion\09 - Interne Produktion"
Datei = "\" & "export-test " & Format(Date, "YYYYMMDD") & ".csv"
ChDir Pfad
ActiveWorkbook.SaveAs FileName:=Pfad & Datei, FileFormat:=xlCSV
End Sub
Nun müsste ich das Ganze noch darum ergänzen, dass nur Zeilen Exportiert werden, deren Wert in Spalte C > 0 ist
Hatte es per Makrorekorder einmal probiert und das Ergebnis über den bisherigen Code eingefügt, allerdings werden trotzdem alle Zeilen exportiert..
mein Code(versuch) war:

 Range("C1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$E$81").AutoFilter Field:=3, Criteria1:=">0", _
Operator:=xlAnd
Wo ist mein Fehler?

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten filtern per Makro
18.07.2022 16:34:13
Tobi
Nachtrag: Natürlich sollte der Thread "ZEILEN" filtern... heißen :)
AW: Spalten filtern per Makro
18.07.2022 17:10:54
Bernhard
Hallo,
ich habe keine Ahnung von VBA, da gibt es super Profis hier.
Wenn ich mir aber den Code mal anschaue, so als Leihe, dann fällt mir auf das am Ende Operator:=xlAnd, _ steht.
Ich würde sagen, das hier eine weitere Operator erwartet wird.
Versuche es mal mit Operator:=xlFilterValues
Wie gesagt ich hab von VBA wirklich keine Ahnung aber würde für mich Sinn ergeben.
Beste Grüße
Bernhard
AW: Spalten filtern per Makro
18.07.2022 17:24:56
Daniel
Hi
der Filter interessiert beim Speichern als CSV wenig.
ich würde eine neue Mappe anlegen, dort die gefilterten Daten hineinkopieren (dabei werden nur die sichtbaren kopiert) und dann die neue Mappe als CSV speichern.
also:

with ActiveSheet.Range("A1:E81")
.Autofilter Field:=3, Criteria1:=">0"
Workbooks.Add xlWBATWorksheet
.SpecialCells(xlcelltypevisible).copy
Activesheet.Range("A1").PasteSpecial xlpastevaluesandnumberformats
ActiveWorkbook.SaveAs FileName:=Pfad & Datei, FileFormat:=xlCSV
ActiveWorkbook.Close
.Autofilter
End with
Gruß Daniel
Anzeige
AW: Spalten filtern per Makro
19.07.2022 08:38:02
Tobi
Danke für den Input!
Lässt es sich nicht über eine "aufwändigere" Abfrage erreichen, dass der gesamte Prozess in einem Schritt gemacht wird?
AW: Spalten filtern per Makro
19.07.2022 08:47:07
Tobi
Alternativ könnte man das Blatt komplett duplizieren und per INDEX/AGGREGAT Funktion die Tabelle doppeln und entsprechend Filtern oder?
hier verstehe ich...
19.07.2022 09:53:41
Oberschlumpf
...deinen Einwand nicht, Tobi
Daniels Idee macht doch genau alles in einem "Abwasch":
- zuerst filtern nach Werten >0
- dann nur die sichtbaren Zeilen kopieren und in neue Datei einfügen
- die neue Datei wird dann mit deinem Wunschdateinamen gespeichert
Das alles ist genau das, was du mit deinem Code nicht hinbekommen hast.
Grund:
Wie Daniel schon erwähnte, eine CSV-Datei ist eine "ganz einfache" Textdatei.
In Textdateien können Excel-Funktionen, wie z Bsp Autofilter nicht angewendet werden.
Excel-Funktionen bleiben nun mal Excel-Dateien (xlsx,xlsm,usw) vorbehalten - deswegen muss man eine neue Datei erstellen, in die dann nur sichtbare Zeilen eingefügt werden.
Ich verstehe nun nicht, was genau dir an Daniels Idee nich gefällt.
Danke für dein Feedback.
Ciao
Thorsten
Anzeige
AW: hier verstehe ich...
25.07.2022 14:42:24
Tobi
du hast natürlich recht - hier habe ich einfach nicht richtig gelesen, sorry.
Funktioniert super, herzlichen Dank!!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige