ich möchte gerne neben der aktuell geöffneten Datei noch zwei weitere Excel-Dateien öffnen bzw. bearbeiten und muss dazu zwischen den Dateien springen.
Ich habe es wie folgt probiert, erhalte hier aber immer den Fehler, dass der Focus Out of Range ist.
Vermutlich spreche ich die Dateien falsch an, so dass Excel nicht weiss, auf welche Datei ich mich gerade beziehe.
Kann mir jemand sagen, was ich falsch mache ?
Mein Code (Auszug):
Sub Test()
Dim varFileC As Workbook, varFileP As Workbook, varLastRow As Long, varPathC As String, _
varPathP As String, varRowPaste As Long, varSourceSheet As Worksheet, varTargetSheet As Worksheet
Worksheets(3).Select
Worksheets(3).Range("D:D").ClearContents
Worksheets(2).Cells.ClearContents
With Worksheets(1)
varSourceSheet = .Range("SourceSheet").Value
varTargetSheet = .Range("TargetSheet").Value
varPathC = .Range("PathC").Value ' der komplette Pfad der Datei
varPathP = .Range("PathP").Value ' der komplette Pfad der Datei
End With
Set varFileC = Workbooks.Open(varPathC)
' clear old data
With varFileC.Sheets(varSourceSheet)
varLastRow = .Range("A" & Rows.Count).End(xlUp).Row
If varLastRow = 1 Then
varLastRow = 2
End If
.Range("A2:G" & varLastRow).ClearContents
varLastRow = .Range("H" & Rows.Count).End(xlUp).Row
.Range("H3:N" & varLastRow).ClearContents
End With
Set varFileP = Workbooks.Open(Filename:=varPathP, ReadOnly:=True)
' refresh data
With varFileP.Sheets(varTargetSheet)
varFileP.RefreshAll
End With
Vielen Dank im Voraus für Eure Hilfe, Markus