habe gestern das nachfolgende Makro bekommen, es funktioniert prima.
In Spalte A der aktuellen Tabelle ist eine Datumsreihe und in der Spalte A der DB eine sehr lange
(ca. 25. 000 Zeilen) Datumsreihe.
Bei Übereinstimung soll der Wert aus Spalte C der DB in die Spalte C der aktuellen Tabelle kopiert werden.
Würde gerne auf die Daten der DB, als geschlossene Areitsmappe, von mehreren Excel-Areitsmappen zugreifen, damit erspart man sich die verschieden DB Versionen und pflegt nur eine DB zugleich bleiben
die einzelnen Excel-Areitsmappen relativ klein.
Die Arbeitsmappe mit der DB soll im gleichen Ordner wie auch die Restlichen Excel- Areitsmappen abgelegt werden.
Sub Start ()
Dim vntA As Variant, vntRes As Variant
Dim lngIndexA As Long
Dim shA As Worksheet, shB As Worksheet, rng As Range
Set shA = ActiveSheet ' aktuelle Tabelle
Set shB = Worksheets("DB") ' Datenbank
vntA = shA.Range(shA.Cells(4, 1), shA.Cells(shA.Cells(shA.Rows.Count, 1).End(xlUp).Row, 3))
Set rng = shB.Range(shB.Cells(4, 1), shB.Cells(shB.Cells(shB.Rows.Count, 1).End(xlUp).Row, 1))
For lngIndexA = 1 To UBound(vntA, 1)
vntRes = Application.Match(CDbl(vntA(lngIndexA, 1)), rng, 0)
If IsNumeric(vntRes) Then
vntA(lngIndexA, 3) = rng.Cells(vntRes, 1).Offset(0, 2)
End If
Next
shA.Range(shA.Cells(4, 1), shA.Cells(shA.Cells(shA.Rows.Count, 1).End(xlUp).Row, 3)) = vntA
End Sub
Kann mir jemand dabei helfen? Ist so was möglich? Wie kann ich das Makro wieter verwenden?
Vielen Dank im Voraus.
Grüße