ich habe folgenden Code gefunden um Daten aus einer geschlossennen Datei zu holen:
Option Explicit
Public Function GetDataClosedWB(SourcePath As String, _
SourceFile As String, sourceSheet As String, _
SourceRange As String, TargetRange As Range) As Boolean
'Holt einen Bereich aus einer _geschlossenen_ Arbeitsmappe
'Nur in VBA zu verwenden; nicht aus einer Tabellenzelle heraus
'© t.ramel@mvps.org
' wird durch die HoleDaten aufgerufen
Dim strQuelle As String
Dim Zeilen As Long
Dim Spalten As Byte
On Error GoTo InvalidInput
strQuelle = "'" & SourcePath & "[" & SourceFile & "]" & sourceSheet & "'!" & Range( _
SourceRange).Cells(1, 1).Address(0, 0)
Zeilen = Range(SourceRange).Rows.Count
Spalten = Range(SourceRange).Columns.Count
With TargetRange.Cells(1, 1).Resize(Zeilen, Spalten)
.Formula = "=IF(" & strQuelle & "="""",""""," & strQuelle & ")"
.Value = .Value
End With
GetDataClosedWB = True
Exit Function
InvalidInput:
MsgBox "Die Quelldatei oder der Quellbereich ist ungültig!", vbExclamation, "Get data from _
_
_
closed Workbook"
GetDataClosedWB = False
End Function
Public Sub HoleDaten()
' Die Funktion arbeitet mit der obrigen GetDataClosedWB zusammen
Dim Pfad As String
Dim Dateiname As String
Dim Blatt As String
Dim Bereich As String
Dim Ziel As Range
Pfad = "C:\Users\heiner\Desktop\Tag2011\"
Dateiname = "Tagesbericht.xls" ' aus welcher Datei soll er holen?
Blatt = "Gesamt" ' von welcher Tabelle soll er holen?
Bereich = "A1:Z500" ' aus welchem Bereich soll er holen?
Set Ziel = ActiveSheet.Range("d4") ' in welchen Bereich soll er kopieren? Genauer gesagt: _
_
Bei welcher Zelle soll er anfangen, Datein reinzukopieren? Bsp: ActiveCell geht auch
If GetDataClosedWB(Pfad, Dateiname, Blatt, Bereich, Ziel) Then
MsgBox "Daten importiert"
End If
Was muss ich ändern, damit folgendes erfüllt wird:
Wenn Datum in Quelle (D5) = Datum in Ziel (A:A) und Wert in Quelle A:A = Wert in Ziel (C3) dann _
_
kopiere
Quelle (A:A) in Ziel (C7)
Also, das Datum der Quelle (D5) soll mit dem Datum im Ziel Spalte A verglichen, sowie der Wert _
aus Quelle Spalte A mit Wert aus Ziel (C3) verglichen werden. Wenn beides gefunden soll der entsprechde Wert in die Zielzeile (Datum) und Zielspalte (Wert (C3)) kopiert werden.
Ich hoffe ich habe mich nicht zu umständlich ausgedrück so das mir jemand helfen kann.
Gruß
Heiner