folgendes Szenario:
Excel 2000
Ich habe die Excel Datei "C:\Fillmeup.xls" in die verschiedene Zellen aus der Excel Datei "C:\Quelle.xls" importiert werden sollen. Diese Zellen sollen einfach auf dem Tabellenblatt "Tabelle_Fillmeup" in die Spalte H eingetragen werden. Die Zellen der Datei "C:\Quelle.xls" heissen "Quelle1" und "Quelle2",befinden sich auf Tabellenblatt "Tabelle_Quelle" und sind konstant (nicht die Werte, nur die Namen!). Allerdings ist der Dateiname "C:\Quelle.xls" nur einmalig. Daher möchte ich gerne die aktuelle Datei per Dialog "Datei öffnen" auswählen können, aus der die Zellen "Quelle1" und "Quelle2" dann importiert werden.
Ich kann zwar mittlerweile (von Null Wissen angefangen) Daten aus anderen, fest definierten .xls Dateien importieren (allerdings auch nur gane Zeilen) und auch den Dialog "Datei öffnen" starten, bringe das aber leider nicht zusammen.
Ich hänge die beiden Codes mal mit dran, bitte nicht auslachen.
Meine Idee wäre, dass der Dialog nach der Auswahl die Datei nicht öffnet, sondern den Namen für die zweite Schleife definiert.
Kann mir da vielleicht jemand helfen?
Vielen Dank im Voraus!
Code für Dialogbox:
Sub Demo_GetOpenFilename()
Dim varRetVal As Variant
varRetVal = Application.GetOpenFileName( _
FileFilter:="Microsoft Excel-Dateien (*.xls), *.xls", _
Title:="EINE Datei zum Öffnen auswählen")
If varRetVal = False Then Exit Sub
On Error Resume Next
Workbooks.Open Filename:=varRetVal
On Error GoTo 0
End Sub
Code für Übertragen von Spalten:
Sub Übertrag()
Dim xlApp As Application
Dim WB As Workbook, Ziel As Range
Set Ziel = ThisWorkbook.Sheets(1).Columns(2)
Set xlApp = New Excel.Application
Set WB = xlApp.Workbooks.Open("C:\Quelle.xls")
Ziel.Value = WB.Sheets(1).Columns("B").Value
Set Ziel = Ziel.Offset(0, 1)
Ziel.Value = WB.Sheets(1).Columns("B").Value
Set Ziel = Ziel.Offset(0, 1)
WB.Close
xlApp.Quit
Set WB = Nothing: Set xlApp = Nothing
Set Ziel = Nothing
End Sub