Herbers Excel-Forum - das Archiv

Je zwei Spalte vergleichen u Unterschiede ausgeben

Bild

Betrifft: Je zwei Spalte vergleichen u Unterschiede ausgeben
von: Thomas Weiß

Geschrieben am: 24.02.2005 10:45:29
Hallo Experten.
folgende Aufgabenstellung stellt sich mir und ich habe keine Ahnung wie sie zu lösen ist:

Ich habe jeweils zwei Spalten (A+B und C+D) mit x Zeilen. In den beiden Gruppen steht jeweils z.B. ein Name (A,C) und eine Zahl (B,D).
Nun sollen folgende Unterschiede/Gleichheiten in den Spalten herausgefunden und die Gruppen in verschiedenen Tabellen abgelegt werden:
Gruppe 1: A=C und B=D
Gruppe 2: A=C und B ungleich D
Gruppe 3: A ist in Spalte C nicht vorhanden
Gruppe 4: C ist in Spalte A nicht vorhanden
In allen Gruppen sollen pro Zeile alle vier Informationen (A,B,C,D) vorhanden sein.

Weiß jemand wie das zu lösen ist ???
Vielen Dank
Thomas
Bild

Betrifft: AW: Je zwei Spalte vergleichen u Unterschiede ausgeben
von: Anton

Geschrieben am: 24.02.2005 11:19:08
Hallo Thomas,
was Du da vor hast ist heftig....
Hier ist mal der Grund-Code zum vergleichen und zum rausspeichern.
Du kannst mir auch gerne Deine Datei auf den Server stellen,
ich gebe sie Dir geändert zurück.
Servus,
Anton

Sub b6_Formel_einsetzen()
Sheets("anwesenheitsprüfung").Select
formel1 = "=VLOOKUP(RC[-4],C[-2],1,FALSE)"
'einfügen der Vergleichs-Formel
'=SVERWEIS(A2;C:C;1;FALSCH)
formel2 = "=IF(ISBLANK(RC[-1]),"" "",IF(ISERROR(RC[3]),""<= die ist neu"",""<= hab ich schon""))"
'einfügen der Gefunden-Formel
'=WENN(ISTLEER(A2);" ";WENN(ISTFEHLER(E2);"<= die ist neu";"<= hab ich schon"))
Range("A2").Select   'BezugsZelle für alle Aktionen = Zelle A2
Do While ActiveCell.Address <> "$A$65001"   'bis zur Zelle F65001 arbeiten
zell = ActiveCell.Address
If ActiveCell <> "" Then   'wenn auf eine leere Zelle gestoßen wird
ActiveCell.Offset(0, 4).Select
ActiveCell = formel1 ' Formel wird in Spalte E gleiche Zeile eingetragen
ActiveCell.Offset(0, -3).Select
ActiveCell = formel2 ' Formel wird in Spalte B gleiche Zeile eingetragen
End If
Range(zell).Offset(1, 0).Select
Loop
'Schönheitsoperation: automatische Spaltenbreite
Columns("A:B").Select
Columns("A:B").EntireColumn.AutoFit
End Sub


Sub c1_rausspeichern_Dialog()
Sheets("anwesenheitsprüfung").Select       'zum Ergebnisblatt
Cells.Select                               'alle Zellen markieren
Selection.Copy                             'Auswahl kopieren
Workbooks.Add                              'neue Excel-Mappe
ActiveSheet.Paste                          'Klemmbrett-Inhalt einfügen
Application.CutCopyMode = False            'Klemmbrett säubern
Application.Dialogs(xlDialogSaveAs).Show   'Datei-name abfragen
End Sub

 Bild
Excel-Beispiele zum Thema "Je zwei Spalte vergleichen u Unterschiede ausgeben"
Vorkommen von Zahlenreihen in Spalten Funktion ANZAHL2 ohne ausgeblendete Spalten
Spaltenbreite anpassen Spalten einer Mehrbereichsauswahl ausblenden.
Spaltennamen bestimmen Spalten/Zeilen aus- und einblenden
Zeilen und Spalten über ein Drehfeld ein- und ausblenden In einem Dialog ausgewählte Spalten drucken
Spalten bedingt summieren und Zellen formatieren Abfrage der markierten Spalten