hab schon mal im Forum hier zu diesem Thema Hilfe bekommen, leider weiß ich nicht, wo man den Thread (nummer) herbekommt (kurze Info wäre toll, wo man die älteren Beiträge findet ;-) )...
aber nun zum Problem (hab das ganze etwas verändert...) :
ich möchte aus drei Tabellen (controll, HG5-Archiv und HG9-Archiv) die Zeilen kopieren, in deren Spalte (E) eine 5 oder eine 9 steht. Diese Zeilen sollen dann in eine Tabelle Zeile Basis eingefügt werden (zum Auswerten mit einer Pivottabelle) und zwar immer in die nächstfreie Zeile (kein Überschreiben). Bisher hab ich folgende zwei Programmcodes mit eurer Hilfe erstellt:
Variante 1:
'Kopieren aller Zeilen in Basis'
Dim ende1 As Long
ende1 = Cells(65536, 1).End(xlUp).Row
For i = ende1 To 3 Step -1
If Worksheets("HG5-Archiv").Cells(i, 5) = "5" Then
Worksheets("HG5-Archiv").Rows(i).Copy
Sheets("Basis").Cells(65536, 1).End(xlUp).Offset(1, 0).PasteSpecial
End If
Next
'Kopieren aller Zeilen in Basis'
Dim ende2 As Long
ende2 = Cells(65536, 1).End(xlUp).Row
For i = ende2 To 3 Step -1
If Worksheets("HG9-Archiv").Cells(i, 5) = "9" Then
Worksheets("HG9-Archiv").Rows(i).Copy
Sheets("Basis").Cells(65536, 1).End(xlUp).Offset(1, 0).PasteSpecial
End If
Next
Aber hier scheint er Zeilen zu überschreiben, die Anzahl Zeilen stimmt nicht
2. Variante
'Kopieren aller Zeilen mit Basis'
ende1 = Worksheets("HG5-Archiv").Cells(65536, 1).End(xlUp).Row
x = 3
For i = 3 To ende1
If Worksheets("HG5-Archiv").Cells(i, 5) = "5" Then
Worksheets("HG5-Archiv").Rows(i).Copy Destination:=Worksheets("Basis").Cells(x, 1)
x = x + 1
End If
ende2 = Worksheets("HG9-Archiv").Cells(65536, 1).End(xlUp).Row
For i = 3 To ende2
If Worksheets("HG9-Archiv").Cells(i, 5) = "9" Then
Worksheets("HG9-Archiv").Rows(i).Copy Destination:=Worksheets("Basis").Cells(x, 1)
x = x + 1
End If
Next
Hier meckert er, dass die For-Variable schon benutzt wird. Diesen Code kann ich besser nachvollziehen, funktioniert aber nur bei einem Tabellenblatt
Kann mir hier jemand weiterhelfen, damit ich das Problem lösen kann?