Clever-Excel-Forum

Normale Version: SVerweis Makro Verschiedenen Tabellenblättern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Zusammen,
Ich sitze gerade am Schreibtisch und versuche mir meine Welt etwas leichter zu gestalten.
Als Prakti habe ich teilweise ein sehr monotones Tagesgeschäft , ich muss Daten in eine Excell Tabelle importieren und mit denen Daten von der Tabelle des letzten Tages abgleichen. Dazu verwende ich den SVerweis für 3 Spalten.
Ich habe mir ein Makro erstellt, dass diese 3 SVerweise gleichzeitig ausführt, dabei gibt es keinerlei Probleme. Wenn sich jetzt aber die Quell Tabelle, die aus  der ich die alten Werte hole, (die Tabelle des Vortages) ändert, geht es nicht mehr. Es zieht immernoch die Werte aus der Quell Datei die ich ursprünglich bei der Erstellung des Makros verwendet habe. Ist ja auch logisch.
Jetzt die Frage, gibt es eine Möglichkeit das anzupassen, dass es immer die Tabelle vom Vortag als Quell Datei nimmt, oder kann ich das irgendwie einstellen.



Hier der Code


Code:
Sub SVerweis_einfach()
'
' SVerweis_einfach Makro
' SVerweis auf einmal
'
' Tastenkombination: Strg+Umschalt+S
'
    Range("M1").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(C[-9],[AIF_21.09.2017.xlsx]AIF_21.09.2017!C4:C13,10,0)"
    Selection.AutoFill Destination:=Range("M1:M98")
    Range("M1:M98").Select
    Range("N1").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(C[-10],[AIF_21.09.2017.xlsx]AIF_21.09.2017!C4:C14,11,0)"
    Range("N1").Select
    Selection.AutoFill Destination:=Range("N1:N98")
    Range("N1:N98").Select
    Range("O1").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(C[-11],[AIF_21.09.2017.xlsx]AIF_21.09.2017!C4:C15,12,0)"
    Range("O1").Select
    Selection.AutoFill Destination:=Range("O1:O98")
    Range("O1:O98").Select
    Range("P1").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(C[-12],[AIF_21.09.2017.xlsx]AIF_21.09.2017!C4:C16,13,0)"
    Selection.AutoFill Destination:=Range("P1:P98")
    Range("P1:P98").Select
End Sub


Vielen Dank schonmal für eure Hilfe!!
Hola,

hier hat jemand das gleiche Problem...

http://www.vba-forum.de/forum/View.aspx?...%C3%A4tter

Gruß,
steve1da
Hallo Steve,

Das ist ebenfalls mein Post, doppelt hält besser. Nur habe ich es noch nicht gelöst bekommen.

Gruß
Hallo,

im Code hast Du diesen Teil:

"=VLOOKUP(C[-9],[AIF_21.09.2017.xlsx]AIF_21.09.2017!C4:C13,10,0)"

Du kannst den auch zusammensetzen, z.B.

"=VLOOKUP(C[-9],[AIF_" & Date() & ".xlsx]AIF_" & Date() & "!C4:C13,10,0)"

Erstes Problem dabei ist, dass das Datum eventuell ein anderes Format als gewünscht hat. In dem Satz steckt auch schon der Lösungsansatz - die Funktion FORMAT. Damit bekommst Du es wie gewünscht.

Zweites Problem ist der Vortag. Ist aber auch einfach, einfach eins subtrahieren.