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

Autofilter

Autofilter
09.11.2006 17:08:36
Christian
Hallo,
ich selektiere via Autofilter 2 Werte über 2 unterschiedliche Spalten und kopiere die selektierten Werte dann in ein anderes Sheet. Nun habe ich folgendens Problem:
Wenn keine Übereinstimmung mit den Selektionskriterien gefunden wird, dann nimmt kopiert mir Exel alle Werte die in den Basistabellen sind in die Übersicht....lässt sich das irgendwie umgehen?
Anbei mal der Quellcode:

Private Sub Januar2_Click()
Dim Blatt As Worksheet
Dim letzeZeile As Long
Set Blatt = Sheets("Januar A.R.")
If Blatt.AutoFilterMode = False Then
Blatt.UsedRange.Autofilter
End If
Blatt.Range("1:1").Autofilter _
Field:=2, Criteria1:="Beratung", _
Operator:=xlAnd, _
Field:=11, Criteria1:="Firma xyz"
Worksheets("Januar A.R.").Rows("2:33").Copy
Worksheets("Übersicht Firma xyz").Range("A6").PasteSpecial xlPasteValues
Application.CutCopyMode = False
Blatt.Range("1:1").Autofilter _
Field:=2, Criteria1:="Beratung", _
Operator:=xlAnd, _
Field:=11, Criteria1:="Firma xyz"
Worksheets("Januar R.S.").Rows("2:33").Copy
Worksheets("Übersicht Firma xyz").Range("A39").PasteSpecial xlPasteValues
Application.CutCopyMode = False
Worksheets("Januar R.S.").Range("1:1").Autofilter
End Sub

Gruss, christian

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter
09.11.2006 19:37:06
ChrisL
Hallo Christian
Am Anfang vom Code ein Check einbauen.
If..Then in deinen eigenen Code einbauen. Gleich nach "Dim"
Die Funktion separat in das gleiche Modul z.B. nach End Sub .
Durchsucht wird B2:B33 und K2:K33.
Gruss
Chris
Sub t()
If CheckKriterium("Beratung", "Firma xyz") = False Then
MsgBox "Kriterien nicht vorhanden. Programm wird abgebrochen.", vbCritical, "Abbruch"
Exit Sub
End If
End Sub

Private Function CheckKriterium(Kriterium1 As String, Kriterium2 As String) As Boolean
Dim Zelle As Range
For Each Zelle In Worksheets("Januar A.R.").Range("B2:B33")
If Zelle = Kriterium1 And Zelle.Offset(0, 9) = Kriterium2 Then
CheckKriterium = True
Exit Function
End If
Next Zelle
End Function

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige