Makro: Spaltenabgleich
hallo,
ich habe folgende (für mich) unlösbare aufgabe bekommen:
1x im monat werden aus sap spezielle daten in ein excel sheet exportiert. um sicherzugehen dass diese daten immer aus den gleichen "spaltenbezeichnungen" besteht soll ich nun ein makro erstellen, welches die aktuell gezogenene excel datei mit der aus dem vormonat vergleicht. wichtig bei dem vergleich sind nicht die daten in den zeilen, sondern lediglich nur die spaltenbezeichnungen wie z.b. name, iststunden, sollstunden etc.
im besten fall sollen änderungen noch farblich gekennzeichnet werden, wenn z.b. eine spalte im vergleich zum vormanat fehtl
ich hab nichtmal den kleinsten ansatz
vielen dank im voraus für die hilfe
Antwort schreiben
Antwort 21 von zhodiac vom 13.09.2019, 11:31 Options
hi nighty
danke für den link.
mir ist allerdings noch ein kleines prob an der programmierung aufgefallen.
das markro hab ich mit einem button in einem separaten excel sheet angelegt mit dem namen "vergleich". damit das marko funktioniert muss ich allerdings strikt die reihenfolge einhalten, wie ich die excel sheets öffne.
soll heissen zuerst die exceldatei 1.xls dann 2.xls und zuletzt vergleich.xls (mit dem markobutton)
wenn ich nun zuerst die datei vergleich.xls öfnne und danach erst die anderen dateien sitze ich in einer endlosschleife fest aus der ich nicht mehr rauskomme.
Antwort 22 von nighty vom 13.09.2019, 14:59 Options
hi zhodiac :)
da ich auf den index der workbooks zugreife ist das verstaendlich,daher die frage nach eindeutigen dateinamen
du koenntest wenn die zu vergleichenden dateien immer 1.xls und 2.xls heissen den index gegen den namen tauschen
z.b.
Workbooks(1) ersetzen durch Workbooks("1")
Workbooks(2) ersetzen durch Workbooks("2")
oder in der vergleichstabelle im open ereignis Workbooks("1") wie Workbooks("2") oeffnen
das open ereignis waere einzufuegen bei der mappe vergleich unter
alt+f11/projektexplorer/DeineArbeitsMappe
Private Sub Workbook_Open()
Workbooks.Open Filename:="C:\Temp\1.xls"
Workbooks.Open Filename:="C:\Temp\2.xls"
End Sub
nun ist die mappe vergleich ja immer der erste index
daher die naechsten 2 folgenden die geoeffnet werden bei dem oeffnen der datei vergleich index 2 und 3
dann waere noch im makro zu ersetzen
Workbooks(1) ersetzen durch Workbooks(2)
Workbooks(2) ersetzen durch Workbooks(3)
hilft dir das weiter ?
gruss nighty
Antwort 23 von zhodiac vom 13.09.2019, 15:29 Options
ja das hilft mir weiter
danke :)