Hallo Jungs/Mädels, bräuchte ein wenig Hilfe :)
Ich habe eine Tabelle mit entsprechend vielen Datensätzen. Nun möchte ich bestimmte Daten aus dieser Tabelle kopieren/ausschneiden und in eine neu generierte Datei Einfügen. Mein Makro ist bis jetzt aber nur so aufgebaut, dass es die kopierten Daten nur in ein neues Tabellenblatt einfügt:
Sub ausschneiden()
Dim intRow As Integer, intLastRow As Integer
Dim gesamt As Worksheet, unbetrachtet As Worksheet
Dim x As Long, y As Long, lngZeilen As Long
Dim rngZelle As Range
Dim lngAnz As Long
'Formeln werden entfernt
For Each rngZelle In ThisWorkbook.ActiveSheet.UsedRange
'prüfen ob Zelle eine Formel enthält
If rngZelle.HasFormula = True Then
rngZelle.Rows.Delete
lngAnz = lngAnz + 1
End If
Next rngZelle
'Zuweisung der Tabellen zu den Variablen
Set gesamt = Worksheets("Gesamtauszug")
Set unbetrachtet = Worksheets("unbetrachtete Datensätze")
'hier wird die länge der Quelltabelle ermittelt und in die Zieltabelle eingef?gt
lngZeilen = gesamt.Cells(gesamt.Rows.Count, 1).End(xlUp).Row
x = 1
'Schleife die die Quelltabelle durchsucht und bei bestimmter Bedingung wird die Aktion copy-paste gestartet
For y = 2 To lngZeilen
'Bedingungen
If Not gesamt.Cells(y, 10) Like "W*" Or gesamt.Cells(y, 3).Value Like "ROTES*" Or gesamt.Cells(y, 3).Value Like "TANKK*" Or gesamt.Cells(y, 3).Value Like "EZW*" Or gesamt.Cells(y, 3).Value Like "FREMD*" Then
gesamt.Rows(y).Cut unbetrachtet.Rows(x)
x = x + 1
End If
Next y
intLastRow = Cells.SpecialCells(xlCellTypeLastCell).Row
'hier werden die leeren Zeilen entfernt
For intRow = intLastRow To 1 Step -1
If Application.CountA(Rows(intRow)) = 0 Then
intLastRow = intLastRow - 1
Else
Exit For
End If
Next intRow
For intRow = intLastRow To 1 Step -1
If IsEmpty(Cells(intRow, 10)) Then
Rows(intRow).Delete
End If
Next intRow
End Sub
Was muss ich denn jetzt genau ändern um die kopierten Daten in eine neu generierte Datei einzufügen?
Vielen Dank für eure Hilfe!!
Grüße
Sino
|