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

Makro: verschiedene Werte suchen und kopieren

Makro: verschiedene Werte suchen und kopieren
08.05.2015 14:01:45
Hilfesucher
Hallihallo,
Ich habe ein kleines VBA Problem und komme nicht weiter.
Zum Hintergrund, ich habe eine Tabelle die ca 11.000 Zeilen hat.Ich möchte diese Zeilen an einer ID identifizieren die in Spalte I steht(eine ID kommt mehrmals vor)und dann in ein neues Blatt kopieren
In dem rohen Datensatz gibt es ca 50 verschiende IDs von denen mich allerdings nur ca 30 interessieren. Jetzt könnte ich einfach über den Filter jedesmal die ausblenden die mich nicht interessieren, da ich diesen Vorgang allerdings fast täglich wieder hole bzw berichten muss und sich die Daten ändern, würde ich dies gern automatisieren mit einem Makro.
Bisher bin ich mit meinem Makro soweit, dass ich für eine ID die Zeilen auslessen kann und in ein neues Blatt kopieren kann(in meinem fall die 1001. Kann mir jemand helfen wie ich die anderen 31 IDs einfügen kann, ohne dass sich das Makro bis ins unendliche aufbläht?
Sub FindenUndKopieren()
Dim rng As Range
Dim loDeinWert As Long
Dim sFirstAdress As String
loDeinWert = "1001" 'gesuchter Wert
Set rng = Worksheets("1").Range("I:I").Find(loDeinWert)
If rng Is Nothing Then
MsgBox "Wert " & loDeinWert & " nicht gefunden!"
Else
sfirstaddress = rng.Address
Do
rng.EntireRow.Copy
Worksheets("2").Cells(Rows.Count, "A").End(xlUp) _
.Offset(1, 0).PasteSpecial Paste:=xlPasteAll
Set rng = Worksheets("1").Range("I:I").FindNext(rng)
Loop While Not rng Is Nothing And rng.Address  sfirstaddress
End If
End Sub
Vielen Dank schomal vorab
Fred

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro: verschiedene Werte suchen und kopieren
08.05.2015 15:04:32
Werner
Hallo Fred,
schreibe doch die gesuchte ID in eine Zelle z.B. A1 und weise der Variablen LoDeinWert den Inhalt der entsprechenden Zelle zu.
Gruß Werner

AW: Makro: verschiedene Werte suchen und kopieren
08.05.2015 20:42:43
Hilfesucher
Hi Werner,
Vielen Dank für deine Antwort, allerdings glaube ich dass ich damit mein Problem noch nicht ganz lösen kann. Ich möchte, dass das Makro eine komplette Liste erstellt von allen IDs und deren Zeilen, die mich interessieren, damit ich diese Liste dann durch eine Pivot-Tabelle auslesen kann.
Viele Grüße
Fred

AW: Makro: verschiedene Werte suchen und kopieren
10.05.2015 00:02:13
Werner
Hallo Fred,
ich hab mal was mit dem Autofilter zusammengebaut.
Option Explicit
Sub FilternUndKopieren()
Dim loNummer As Long
Dim loLetzte As Long
Dim loLetzte1 As Long
Dim i As Long
Application.ScreenUpdating = False
loLetzte = Sheets(1).Cells(Rows.Count, 10).End(xlUp).Row
loLetzte1 = Sheets(2).Cells(Rows.Count, 1).End(xlUp).Row
If loLetzte1 > 1 Then
Sheets(2).Range("A2:I" & loLetzte1).ClearContents
End If
For i = 2 To loLetzte
With Sheets(1)
loNummer = Sheets(1).Cells(i, 10).Value
.Range("A1").AutoFilter Field:=9, Criteria1:=loNummer
If .Cells(.Rows.Count, 9).End(xlUp).Row > 1 Then
Intersect(.Columns("A:I"), .Range(.Rows(2), .Rows(.Range("A1").CurrentRegion.Rows. _
Count))).Copy
Sheets(2).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormats
Sheets(2).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
.AutoFilter.ShowAllData
.Application.CutCopyMode = False
End If
End With
Next i
Sheets(1).AutoFilterMode = False
Application.ScreenUpdating = True
End Sub
Zugrunde lag bei mir eine Datei mit den Blättern Tabelle1 und Tabelle2.
In Tabelle1 von A1 bis J1 befinden sich Überschriften. Von A2 bis I2 beginnen die Daten. Die ID steht in spalte I.
In Spalte J, ab J2 kannst du dann die ID-Nummern eingeben, die dich "interessieren".
Bei Ausführen des Makros werden zuerst die Daten in Tabelle2 (von A2 bis J-letzte Zeile) gelöscht.
Anschließend wird in Blatt 1 die Spalte mit den ID-Nummern (hier Spalte I) über die Nummern in Spalte I gefiltert und die gefilterten Daten (Spalte A bis Spalte I) in Tabelle2 ab A2 kopiert. In Blatt 2 habe ich (sowohl bzgl. des Löschens als auch bzgl. des Einkopierens von Daten) für etwaige Überschriften frei gelassen.
Kannst es ja mal ausprobieren und ggf. auf deine Bedürfnisse anpassen.
Gruß Werner

Anzeige
AW: Makro: verschiedene Werte suchen und kopieren
11.05.2015 09:06:57
Hilfesucher
Hi Werner,
Jetzt klappt es perfekt.
Vielen Dank

AW: Makro: Danke für die Rückt owT
11.05.2015 09:21:01
Werner

324 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige