Supportnet / Forum / Tabellenkalkulation
Datenprüfung in Excel
Frage
Hallo zusammen,
vielleicht erreiche ich ja bei diesem sonnigen Wetter trotzdem jemand der mit behilflich sein könnte.
Ich habe eine Arbeitsmappe mit 2 Tabellen(1+2)
Tabelle 1 ist meine sog. Mastertabelle und enthält folgende Werte:
Spalte A: Auftraggeber
Spalte B: Warenempfänger
Spalte C: Material
Tabelle 2 enthält die gleichen Werte, wird aber jeden Monat ausgetauscht, sodaß neue Werte hinzukommen können.
Ich möchte nun prüfen, welche Werte die ggf. in Tabelle 2 neu dazugekommen sind, nicht in Tabelle 1 enthalten sind und im 2. Schritt diese an Tabelle 1 anfügen.
Ich würde mich sehr freuen, wenn jemand von Euch eine Lösung zu diesem Problem wüßte.
Vorab schon mal vielen Dank für die Unterstützung.
CU Meikel
Antwort 1 von Hajo_Zi
Hallo Meikel,
schaue mal auf meine Homepage da ist ein Beispiel auf der Seite VBA, allgemein.
Vielleict ist das ein Ansatz,
Die Seite wird aber gerade gewartet. Das dürfte aber nur eine kurzfristige Sache sein.
Gruß Hajo
schaue mal auf meine Homepage da ist ein Beispiel auf der Seite VBA, allgemein.
Vielleict ist das ein Ansatz,
Die Seite wird aber gerade gewartet. Das dürfte aber nur eine kurzfristige Sache sein.
Gruß Hajo
Antwort 2 von Meikel
Hallo Hajo,
Danke für die Info. Wie heisst denn deine Homepage???
Meikel
Danke für die Info. Wie heisst denn deine Homepage???
Meikel
Antwort 3 von Hajo_Zi
Hallo Meikel,
ich hatte den Link zur Datei eigentlich eingefügt. Hier der zweite Versuch.
Link zur Datei
Doie Hompepage steht im Profil.
Gruß Hajo
ich hatte den Link zur Datei eigentlich eingefügt. Hier der zweite Versuch.
Link zur Datei
Doie Hompepage steht im Profil.
Gruß Hajo
Antwort 4 von nighty
hi all :-)
wie gewünscht
gruss nighty
Option Explicit
Sub vergleich()
Dim w1x As Integer
Dim w1y As Long
Dim zaehler0 As Long
Dim suche As Range
Dim zeile As Long
w1x = Sheets(2).UsedRange.SpecialCells(xlCellTypeLastCell).Column
w1y = Sheets(2).UsedRange.SpecialCells(xlCellTypeLastCell).Row
ReDim excel1(w1y, w1x) As Variant
Sheets(2).Select
excel1() = Range(Cells(1, 1), Cells(w1y, w1x))
Sheets(1).Select
For zaehler0 = 2 To w1y
Set suche = Sheets(1).Range("A1:A" & w1y).Find(excel1(zaehler0, 1), Lookat:=xlWhole)
If suche Is Nothing And excel1(zaehler0, 1) <> "" Then
zeile = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1
Sheets(2).Rows(zaehler0 & ":" & zaehler0).Copy Sheets(1).Rows(zeile & ":" & zeile)
End If
Next zaehler0
End Sub
wie gewünscht
gruss nighty
Option Explicit
Sub vergleich()
Dim w1x As Integer
Dim w1y As Long
Dim zaehler0 As Long
Dim suche As Range
Dim zeile As Long
w1x = Sheets(2).UsedRange.SpecialCells(xlCellTypeLastCell).Column
w1y = Sheets(2).UsedRange.SpecialCells(xlCellTypeLastCell).Row
ReDim excel1(w1y, w1x) As Variant
Sheets(2).Select
excel1() = Range(Cells(1, 1), Cells(w1y, w1x))
Sheets(1).Select
For zaehler0 = 2 To w1y
Set suche = Sheets(1).Range("A1:A" & w1y).Find(excel1(zaehler0, 1), Lookat:=xlWhole)
If suche Is Nothing And excel1(zaehler0, 1) <> "" Then
zeile = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1
Sheets(2).Rows(zaehler0 & ":" & zaehler0).Copy Sheets(1).Rows(zeile & ":" & zeile)
End If
Next zaehler0
End Sub
Antwort 5 von Meikel
Hallo zusammen,
danke für Eure Info. Ich denke dami komme ich zurecht.
Gruß, Meikel
danke für Eure Info. Ich denke dami komme ich zurecht.
Gruß, Meikel