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

Zeilen suchen und in anderes Blatt kopieren

Zeilen suchen und in anderes Blatt kopieren
Uschi
Hallo Forum,
ich habe folgendes Script, das auch funktioniert:

Sub SelectIfT()
Dim Var As Variant
Dim iRow As Integer, iRowL As Integer
iRowL = Cells(Rows.Count, 1).End(xlUp).Row
For iRow = iRowL To 1 Step -1
Var = Application.Match("*Fischer*", Rows(iRow), 0)
If Not IsError(Var) Then
Rows(iRow).Select
End If
Selection.Copy
Sheets("conrad").Select
Rows("6:6").Select
ActiveSheet.Paste
Sheets("export").Select
Next iRow
For iRow = iRowL To 1 Step -1
Var = Application.Match("*Mueller*", Rows(iRow), 0)
If Not IsError(Var) Then
Rows(iRow).Select
End If
Selection.Copy
Sheets("conrad").Select
Rows("7:7").Select
ActiveSheet.Paste
Sheets("export").Select
Next iRow
End Sub

Ich suche also Zeilen in denen ein bestimmter Name vorkommt, kopiere diese und füge sie in einem anderen Blatt ein. Das Beispiel von oben muß ich aber noch auf 10 Suchbegriffe erweitern. Kann ich das irgendwie eleganter lösen, ohne den Block von For bis Next immer wieder zu kopieren?
Danke schon mal!

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

Betreff
Benutzer
Anzeige
AW: Zeilen suchen und in anderes Blatt kopieren
y
hi Uschi,
select ist in den meisten fällen vollkommen unnötig ;-)
probier mal:

Sub SelectIfT()
Dim Var As Variant
Dim iRow As Integer
Dim iRowL As Integer
Dim suche As Integer
Dim strSuche As String
Dim kopieren As Integer
kopieren = 6
iRowL = Cells(Rows.Count, 1).End(xlUp).Row
For suche = 1 To 3 'hier die anzahl der suchbegriffe
strSuche = Choose(suche, "*Fischer*", "*Müller*", "*Meier*") 'hier die suchbegriffe
For iRow = iRowL To 1 Step -1
Var = Application.Match(strSuche, Rows(iRow), 0)
If Not IsError(Var) Then
Rows(iRow).Copy Destination:=Worksheets("conrad").Rows(kopieren)
kopieren = kopieren + 1
End If
Next iRow
Next suche
End Sub

cu Micha
Anzeige
AW: Zeilen suchen und in anderes Blatt kopieren
Uschi
Danke Micha! Das sieht doch schon viel übersichtlicher aus. Wofür steht die 6 bei kopieren? Muß ich da auch was beachten?
Gruß
Uschi
AW: Zeilen suchen und in anderes Blatt kopieren
y
hi Uschi
du hattest in deinem makro als erste zielzeile die 6 angegeben
das habe ich einfach übernommen
kannst du natürlich ändern wie du es magst ;-)
cu Micha

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige