Hi zusammen,
folgende Problematik:
Ich habe eine Exceldatei in der ich verschiedene Auswertungen mache. Die Daten kommen aus SAP bzw. aus einer Exceldatei die ich durch SAP erstelle. Das heisst über ein Makro öffnet sich die "Datei öffnen" Maske, und es wird einmal im Monat die SAP-Exceldaten in meine bestehende Exceldatei importiert. Dann werden mittels Makro alle Dublikate herausgefiltert und die gefilterten Daten auf ein weiteres Tabellenblatt kopiert.
Es handelt sich dabei um Maßnahmen die mit einer Meldungsnummer registriert sind. In meiner bestehenden Exceldatei sind bereits Daten gespeichert.
Jetzt möchte ich das die neu importierten Daten, nach der Dublikatfilterung, mit der bestehenden Liste verglichen wird. Dabei sollen zwei Dinge passieren:
Wenn ein Datensatz nicht in der bestehenden Liste steht, sollen die Daten eingetragen werden.
Wenn ein Datensatz aus der bestehenden Liste in der neuen Liste nicht mehr da ist, soll ein Zähler nach oben gezählt werden.
Der Vergleich geschieht über die Meldungsnummer.
Ich hoffe es ist verständlich was ich möchte....hier noch mein bestehender Code:
Danke im voraus.
folgende Problematik:
Ich habe eine Exceldatei in der ich verschiedene Auswertungen mache. Die Daten kommen aus SAP bzw. aus einer Exceldatei die ich durch SAP erstelle. Das heisst über ein Makro öffnet sich die "Datei öffnen" Maske, und es wird einmal im Monat die SAP-Exceldaten in meine bestehende Exceldatei importiert. Dann werden mittels Makro alle Dublikate herausgefiltert und die gefilterten Daten auf ein weiteres Tabellenblatt kopiert.
Es handelt sich dabei um Maßnahmen die mit einer Meldungsnummer registriert sind. In meiner bestehenden Exceldatei sind bereits Daten gespeichert.
Jetzt möchte ich das die neu importierten Daten, nach der Dublikatfilterung, mit der bestehenden Liste verglichen wird. Dabei sollen zwei Dinge passieren:
Wenn ein Datensatz nicht in der bestehenden Liste steht, sollen die Daten eingetragen werden.
Wenn ein Datensatz aus der bestehenden Liste in der neuen Liste nicht mehr da ist, soll ein Zähler nach oben gezählt werden.
Der Vergleich geschieht über die Meldungsnummer.
Ich hoffe es ist verständlich was ich möchte....hier noch mein bestehender Code:
Quellcode
- Sub Dublikate_Loeschen_Kopieren()
- '
- Dim LastRow As Long
- Dim wks As Worksheet
- Dim Zeilenanzahl As Integer
- Dim Spaltenanzahl As Integer
- Dim zeile As Long
- Application.ScreenUpdating = False
- 'Dublikate aus Tabellenblatt Import löschen
- Set wks = ThisWorkbook.Worksheets("Import")
- ActiveSheet.UsedRange.RemoveDuplicates Columns:=1, Header:=xlYes
- 'Aktuelles Datum in CC1
- Range("CC1").Select
- ActiveCell.FormulaR1C1 = "=TODAY()"
- 'Hinter allen Verwendeten Zeilen Datum
- Range("H2").Select
- ActiveCell.FormulaR1C1 = "=IF(ISNONTEXT(RC[-6]),"""",(R1C[73]))"
- Range("H2").Select
- Selection.AutoFill Destination:=Range("H2:H10000"), Type:=xlFillDefault
- Range("H2:H10000").Select
- 'Benutzten Bereich ausschneiden und auf Dublikat_Filter einfügen
- Zeilenanzahl = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
- Spaltenanzahl = ActiveSheet.Cells(Zeilenanzahl, Columns.Count).End(xlToLeft).Column
- Range(Cells(2, 1), Cells(Zeilenanzahl, Spaltenanzahl)).Copy
- Sheets("Dublikat_Filter").Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues, _
- Operation:=xlNone, SkipBlanks:=False, Transpose:=False
- 'Inhalte in Tabellenblatt Import löschen
- Worksheets("Import").Cells.Clear
- Application.ScreenUpdating = True
- End Sub
Danke im voraus.