Excel VBA Daten abfragen und übertragen?

1 Antwort

Zunächst muss du über den Monat die Zeile finden ab wo die Tfz Nummer gesucht werden soll.
Anstatt Januar, etc besser die Monats Ziffer verwenden, dann wird es einfacher.

Das Makro muss zunächst die ZielMappe öffnen. Findest du im Web _oder_
befindet sich das Makro in der ZielDatei, dann zunächst die QuellDatei öffnen.

Dim Quelle as Object
Dim Ziel as Object

Set Quelle = Workbooks("QuellMappenName")
Set Ziel = Workbooks("ZielMappenName")

TfzNummer = Quelle.Worksheets("BlaBla").Range("B5").Value 'Bild ohne Koordinaten

aktMonat = DateTime.Month(DateTime.Date)

aktMonatZeile = Worksheetfunction.Match(aktMonat, Ziel.Worksheets("BlaBla").Range("A1:A20000"),False)

aktTfzZeile = Worksheetfunction.Match(TfzNummer, Ziel.Worksheets("BlaBla").Range("A" & aktMonatZeile +1 & ":A20000"),False) + aktMonatZeile

aktTageSpalte = Worksheetfunction.Match(DateTime.Day(DateTime.Date),Ziel.Worksheets("BlaBla").Range(Cells(aktMonatZeile + 1,1),Cells(aktMonatZeile + 1,1000 )),False)

Nun sind die Zielkoordinaten bekannt
Ziel.Cells(aktTfzZeile, aktTageSpalte).Value = Quelle.Range(KoordinateDes KilometerStand).Value


ThatsMe404 
Fragesteller
 14.03.2023, 05:06

Danke für deine Antwort.

Ich habe es jetzt einmal übertragen und die Daten angepasst. Jetzt kommt, das es einen Laufzeitfehler gibt und ich komme einfach nicht dahinter, wo er her kommt. Es wird auch nichts gelb markiert.

Ich hatte es einmal übertragen, da kam es schon mal bis zur Zeile "aktMonatZeile", aber jetzt geht es irgendwie gar nicht mehr obwohl alles gleich ist wie vorher.

0
IchMalWiederXY  14.03.2023, 18:07
@ThatsMe404

Generell:
Es geht alles auch mit Formeln.
Also ggf erst einmal per Formel erreichen die Richtige Zeile und Spalte zu finden.
Ist dies einmal erreicht, dann diese Formel nach VBA übertragen.
Sowohl Mappe 2 wie auch 1 haben eine "schlechte" Rohdaten Struktur.
Dies sollte am besten PIVOT tauglich aufgebaut werden, dann hat man den Ärger auch mit dem was du machen sollst gar nicht mehr.

0