Ich habe ein Problem bei der Quell und Ziel-Range Angabe für variabel zu öffnende Dateien.
Im Moment sieht der Code so aus:
Sub Dateneinfügen()
Dim PathAndFileNames As Variant 'kein String !
Dim strPathAndFile$
Dim strPath$
Dim strFileName$
Dim xi&
Dim wbk As Workbook
Dim xlsChart As Excel.Chart
Dim wks As Worksheet
Dim objWbkS As Workbook 'Quell-Mappe
Dim objWksS As Worksheet 'Quell-Tabelle
Dim objWbkT As Workbook 'Ziel-Mappe
Dim objWksT As Worksheet 'Ziel-Tabelle
Dim objRngT As Range 'Ziel-Zelle
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Zielmappe", _
MultiSelect:=True)
If VarType(PathAndFileNames) = vbBoolean Then
MsgBox "Abgebrochen!"
Else
'alle ausgewählen File bearbeiten
For xi& = LBound(PathAndFileNames) To UBound(PathAndFileNames)
strPathAndFile = PathAndFileNames(xi&)
strFileName = Split(Dir(strPathAndFile, 63), ".", -1, 0)(0)
strPath$ = Mid(strPathAndFile, 1, Len(strPathAndFile) - Len(strFileName))
Set objWbkT = Workbooks.Open(Filename:=strPathAndFile)
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Südwand", _
MultiSelect:=False)
Range("G4:G19,I4:J19").Select
Range("I4").Activate
Selection.Copy
Windows("objWbkT.Worksheet(1)").Activate 'das funktioniert so nicht
Range("G42").Select
ActiveSheet.Paste
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Nordwand", _
MultiSelect:=False)
Windows("BISSAU Nord Wand.xls").Activate
Range("G4:G19,I4:J19").Select
Range("I4").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("BISSAU.xls").Activate
Range("A42").Select
ActiveSheet.Paste
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Ostwand", _
MultiSelect:=False)
Windows("BISSAU Ost Wand.xls").Activate
Range("G4:G19,I4:J19").Select
Range("I4").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("BISSAU.xls").Activate
Range("D42").Select
ActiveSheet.Paste
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Westwand", _
MultiSelect:=False)
Windows("BISSAU West Wand.xls").Activate
Range("G4:G19,I4:J19").Select
Application.CutCopyMode = False
Selection.Copy
Windows("BISSAU.xls").Activate
Range("B42").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "Globalstrahlung"
Range("C42").Select
ActiveCell.FormulaR1C1 = "Diffusstrahlung"
ActiveSheet.Paste
Next
End If
End Sub
Das Problem hier bei ist, daß er die Spalten der Zieltabelle auch als Quelldaten ansieht und nicht die aus der speziell dafür geöffneten Datei.
Wie kann ich das ändern und wie muß die Angabe für die Zielzellen sein?