Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Filter setzten nur bestimmte Werte

Filter setzten nur bestimmte Werte
16.06.2016 10:22:52
Noureddine
Hallo,
ich brauch mal wieder eure Hilfe.
Ich möchte über VBA nur bestimmt Werte fliter, die ich über ein Formular steuere.
Mein Code sieht mittlerweile so aus:

ActiveSheet.Range(.Cells(2, 1), Cells(LetzteZeileC, 1)).AutoFilter _
Field:=1, Criteria1:=Array(txtJahrC & txtMonatC, txtJahrC & txtMonatC - 1, _
Str(txtJahrC & txtMonatC - 2), Str(txtJahrC - 1 & txtMonatC), Str(txtJahrC - 1 &  _
txtMonatC - 1), _
Str(txtJahrC - 1 & txtMonatC - 2)), Operator:=xlFilterValues

Er setzt mir leider nur die Filter, wenn keine Berechnung vorliegt. Ich habs bereits mit val () und str () versucht. Das Format in der Datei ist als Standard angegeben.
Was mache ich hier falsch?
Danke vorab für eure Hilfe.

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Filter setzten nur bestimmte Werte
16.06.2016 17:11:50
ChrisL
Hi
Leider ist die Frage völlig aus dem Zusammenhang gerissen (was willst du genau filtern, wie sind die Variablen definiert, wie sieht die Tabelle aus...).
txtJahr etc. klingt nach einem String. Damit kannst du nicht rechnen/subtrahieren.
Ich vermute es geht in diese Richtung:
https://www.herber.de/forum/archiv/1488to1492/t1489205.htm
cu
Chris

Anzeige
AW: Filter setzten nur bestimmte Werte
22.06.2016 19:15:53
Noureddine
Bin mal das Thema Filter mal kurz durch gegangen.
Folgendes Makro habe ich erstell:

Sub filter()
Dim Monat As String
Dim MonatVergleich As String
Dim LetzteZeileC As Integer
LetzteZeileC = Sheets("Calcs").Cells(Rows.Count, 1).End(xlUp).Rows.Row
Monat = InputBox("asasa", "dwas")
MonatVergleich = InputBox("asasa", "dwas")
'Tabellenblatt hinzufügen
Sheets.Add , Sheets(Sheets.Count)
ActiveSheet.Name = "Calcs2"
'Filter setzen
With Sheets("Calcs")
Range(.Cells(1, 1), .Cells(LetzteZeileC, 7)).AutoFilter Field:=4, _
Criteria1:="=" & Monat, Operator:=xlOr, Criteria2:="=" & MonatVergleich
'Gefiltertes kopieren
Range(.Cells(1, 1), .Cells(.UsedRange.Rows.Count, 7)).SpecialCells(xlCellTypeVisible). _
Copy
'Einfügen
Sheets("Calcs2").Cells(1, 1).PasteSpecial
'Filter entfernen
Range(.Cells(1, 1), .Cells(LetzteZeileC, 7)).AutoFilter Field:=4
End With
End Sub
Es funktioniert soweit sehr gut, jedoch habe ich eine Menge von Daten. Vor allem beim wieder einfügen braucht das Programm zimlich lang...
Gib es dazu ein vielleicht schnellere Variante?
Vielen Dank.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige