Hallo zusammen,
ich habe 2 Files: source.xlsx und destination.xlsx
source.xlsx
- beinhaltet eine Tabelle mit den Headern: Jan 21' - Dez 23'
- Daten werden monatlich in den aktuellen Monat eingetragen, Monat für Monat wird also eine Spalte mit Daten befüllt
- Da wir Daten von verschiendenen Projekten vergleichen wollen, wird der Name unterschiedlich sein und in einer Zelle im destination.xlsx wird der Name des zu vergleichenden Files eingegeben (bereits gelöst mit =INDIRECT und =CONCATENATE)
destination.xlsx (= soll eine art dynamisches Vergleichstool werden)
- beinhaltet nur 2 Spalten: aktuellen Monat und vorherigen Monat: z.b. April 21' und März 21'
- in einer dritten Spalte werden die relativen Abweicheichungen ausgegeben
- zu betrachtende Monate per Dropdown-Liste auswählen und Makro laufen lassen
Bis zu diesem Punkt konnte ich es so weit schaffen, dass mir die Daten für 2 Spalten STATISCH für 2 festgelgete Spalten ausgegeben werden, also fehlt mir eigentlich nur noch die Dropdown-Liste um flexibel die Monate auszuwählen, mein jetztiger stand hier:
Sub test()
Application.ScreenUpdating = False
Worksheets("test").Range("C10").Formula = "=INDIRECT(Sheet2!D10)"
Worksheets("test").Range("C12").Formula = "=INDIRECT(Sheet2!D12)"
Worksheets("test").Range("C13").Formula = "=INDIRECT(Sheet2!D13)"
Worksheets("test").Range("C14").Formula = "=INDIRECT(Sheet2!D14)"
Worksheets("test").Range("C16").Formula = "=INDIRECT(Sheet2!D16)"
Worksheets("test").Range("C18").Formula = "=INDIRECT(Sheet2!D18)"
Worksheets("test").Range("C19").Formula = "=INDIRECT(Sheet2!D19)"
Worksheets("test").Range("C20").Formula = "=INDIRECT(Sheet2!D20)"
Worksheets("test").Range("D10").Formula = "=INDIRECT(Sheet2!F10)"
Worksheets("test").Range("D12").Formula = "=INDIRECT(Sheet2!F12)"
Worksheets("test").Range("D13").Formula = "=INDIRECT(Sheet2!F13)"
Worksheets("test").Range("D14").Formula = "=INDIRECT(Sheet2!F14)"
Worksheets("test").Range("D16").Formula = "=INDIRECT(Sheet2!F16)"
Worksheets("test").Range("D18").Formula = "=INDIRECT(Sheet2!F18)"
Worksheets("test").Range("D19").Formula = "=INDIRECT(Sheet2!F19)"
Worksheets("test").Range("D20").Formula = "=INDIRECT(Sheet2!F20)"
Application.ScreenUpdating = True
MsgBox "Complete"
End Sub
Kann mir da jemand vielleicht einen Tipp geben? Ich dachte es würde vielleicht mit =VLOOKUP oder einem simplen =IF gehen, aber das ist natürlich zu simpel...
Zusammengefasst ist das Ziel also, dass
- die Projekt Controller source.xlsx und destination.xlsx parallel geöffnet haben
- in destination.xlsx den exakten namen von source.xlsx eingeben
- in destination.xlsx die 2 zu betrachtende Monate wählen
- aus source.xlsx dann die daten in destination.xlsx ausgegeben werden
Ich bin echt über jeden Tipp dankbar!!!
Liebe Grüße
Lukas
|