AW: Je zwei Spalte vergleichen u Unterschiede ausgeben
24.02.2005 11:19:08
Anton
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