Halli Hallo,
ich habe folgendes Problem.
Ich habe mehrere Exeldatein (*.xls) mit nur einem Arbeitsblatt (worksheet), welche ich zu einer eizigsten Datei zusammenfügen möchte.
_____________________________________________________________
Hier schon mal das Makro:
Alles anzeigen
_____________________________________________________________
evtl. hat ja jemand ein bisschen mehr Plan - ich bin am verzeifeln :lol:
Axo - ist office 2003 - führere Office Paket hab ich leider nix mehr.
thanks for helping me.
ich habe folgendes Problem.
Ich habe mehrere Exeldatein (*.xls) mit nur einem Arbeitsblatt (worksheet), welche ich zu einer eizigsten Datei zusammenfügen möchte.
_____________________________________________________________
Hier schon mal das Makro:
Quellcode
- Sub CopyValues()
- Dim vFile As Variant
- Dim iRow As Integer
- Dim sPath As String, sFormula As String, sMem As String, sRange As String
- sPath = "c:\test"
- sMem = CurDir
- ChDrive Left(sPath, 1)
- ChDir sPath
- vFile = Application.GetOpenFilename("Excel-Arbeitsmappen (*.xls); *.xls")
- If vFile = False Then Exit Sub
- sFormula = "='" & sPath & "\[" & Dir(vFile) & "]Tabelle1'!" & Range (!A!").Value.Copy .Range(sRange)
- With Worksheets("Import")
- .Range(Range("A1").Value).FormulaLocal = sFormula
- iRow = 2
- Do Until IsEmpty(Cells(iRow, 1))
- If iRow = 2 Then
- sRange = Cells(iRow, 1).Value
- Else
- sRange = sRange & "," & Cells(iRow, 1).Value
- End If
- iRow = iRow + 1
- Loop
- .Range(Range("A1").Value).Copy .Range(sRange)
- .UsedRange.Value = .UsedRange.Value
- Application.CutCopyMode = False
- End With
- ChDrive Left(sMem, 1)
- ChDir sMem
- MsgBox "Job erledigt"
- End Sub
_____________________________________________________________
evtl. hat ja jemand ein bisschen mehr Plan - ich bin am verzeifeln :lol:
Axo - ist office 2003 - führere Office Paket hab ich leider nix mehr.
thanks for helping me.