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

Autofilter Makro

Autofilter Makro
17.09.2014 15:27:28
Neo
Guten Tag,
ich habe eine Liste mit mehreren Kunden und möchte daraus die unwichtigeren Kunden in ein anderes Arbeitsblatt kopieren.
Ich habe es wie folgt gemacht leider kommt der Fehler: "Laufzeitfehler 1004" Anwendungs- oder objektdefinierter Fehler.
Folgender Code:

Sub Sonstige_Liste()
' Sonstige_Liste Makro
Sheets("Aufträge").Select
ActiveSheet.Range("$A$1:$M$998").AutoFilter Field:=2, Criteria1:="Rewe Stelle", _
Operator:=xlOr, Criteria2:="Rewe Lehrte", _
Operator:=xlOr, Criteria3:="Rewe Köln-Langel", _
Operator:=xlOr, Criteria4:="Rasting Meckenheim", _
Operator:=xlOr, Criteria5:="Rasting Essen"
Range("A1:M1020").Select
Selection.Copy
Sheets("Diverse").Select
Range("A1").Select
ActiveSheet.Paste
End Sub

Sitze jetzt schon die dritte Stunde an dem bisschen Code!
Bitte helft mir!

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

Betreff
Datum
Anwender
Anzeige
AW: Autofilter Makro
17.09.2014 15:40:16
Daniel
Hi
der Autofilter hat nur 2 "Criteria" die man miteinander verknüpfen kann !
filtere mal von Hand nach 3 oder mehr Kriterien und zeiche die Aktion mit dem Recorder auf, dann siehst du wie es geht.
Gruß Daniel

AW: Autofilter Makro
17.09.2014 22:08:46
Adis
Hallo
anbei eine Makro Lösung die einfacher sein dürfte wie das herumspielen mit AutoFilter
Die Bereiche sind in Const angegeben. Ich gehe davon aus das Rewe und Rasting in der
Spalte B stehen. Sonst bitte abaendern. Die Spalte N dient lediglich als Hilfsspalte
und wird nach dem sortieren automatisch gelöscht. Ich kopiere und lösche die Daten.
Die Case Option kann um beliebig viele Kunden erweitert werden.
Der doofe Trick liegt darin das ich zum Schluss nur Else auswerte.
Const AswBereich = "B1:B1020"
Const IndxSpalte = "N1:N1020"
Sub Makro_alsAutoFilter_Ersatz()
Dim Div As Object, flg As String, i
Set Div = Sheets("Diverse")
'alle Daten in Tabelle Diverse kopieren
Sheets("Aufträge").Range("A1:M1020").Copy
Sheets("Diverse").Range("A1").PasteSpecial xlAll
'Hilfsspalte "N" für Lauf-Nr zum sortieren
Div.Range(IndxSpalte).Resize(1, 1).Value = 1
Div.Range(IndxSpalte).DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1
'Schleife um alle Kunden auszuwerten  (Else wird mit No ausgewertet)
For Each i In Div.Range(AswBereich)
flg = "Ja"  'Flag zum löschen
'Stamm Kunden auswerten, sonstige löschen
'**  die Liste kann beliebig erweitert werden
Select Case i.Value
Case "Rewe Stelle"
Case "Rewe Lehrte"
Case "Rewe Köln-Langel"
Case "Rasting Meckenheim"
Case "Rasting Essen"
Case Else: flg = "No"
End Select    'alle Kunden ausser sonstige löschen
If flg = "Ja" Then Div.Cells(i.Row, "A").Resize(1, 14) = Empty
Next i
'Bereich nach Lauf Nr sortieren
Div.Range("A1:N1020").Sort Key1:=Div.Range("N1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
'Hilfsspalte löschen
Div.Columns("N").ClearContents
End Sub
Gruss Adis

Anzeige
AW: Autofilter Makro
18.09.2014 09:24:25
Neo
Vielen Dank an euch beide,
Adis Makro funktioniert Super.
Gruß Bernd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige