DarioKeizer
Gebruiker
- Lid geworden
- 1 jun 2016
- Berichten
- 8
Hallo allemaal,
Ik ben op zoek naar een manier om een hele lijst aan bestanden samen te voegen in Excel (zie Macro 1) en daarbij de bestandsnamen als kolom te vullen in het totaalbestand (zie Macro 2).
Op dit moment heb ik 2 Macro's waarbij ik in losse stappen het resultaat bereik.
Wie weet een manier om deze 2 functionaliteiten samen te voegen tot 1 macro?
_________________MACRO 1_________________
Sub MergeAll()
Dim bookList As Workbook
Dim mergeObj As Object, dirObj As Object, filesObj As Object, everyObj As Object
Application.ScreenUpdating = False
Set mergeObj = CreateObject("Scripting.FileSystemObject")
Set dirObj = mergeObj.Getfolder("C:\Mijn Documenten\ImportBestanden")
Set filesObj = dirObj.Files
For Each everyObj In filesObj
Set bookList = Workbooks.Open(everyObj)
Range("A1:IV" & Range("A65536").End(xlUp).Row).Copy
ThisWorkbook.Worksheets(1).Activate
Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial
Application.CutCopyMode = False
bookList.Close
Next
End Sub
_________________MACRO 2_________________
Sub FileNameAsColumn()
‘plek waar de bestandnaam dient te komen
Range("BH2").Select
ActiveCell.FormulaR1C1 = "=REPLACE(LEFT(CELL(""filename""),SEARCH(""]"",CELL(""filename""))-1),1,SEARCH(""["",CELL(""filename"")),"""")"
Range("A2").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 59).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.FillDown
Columns("BH:BH").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
Ik ben op zoek naar een manier om een hele lijst aan bestanden samen te voegen in Excel (zie Macro 1) en daarbij de bestandsnamen als kolom te vullen in het totaalbestand (zie Macro 2).
Op dit moment heb ik 2 Macro's waarbij ik in losse stappen het resultaat bereik.
Wie weet een manier om deze 2 functionaliteiten samen te voegen tot 1 macro?
_________________MACRO 1_________________
Sub MergeAll()
Dim bookList As Workbook
Dim mergeObj As Object, dirObj As Object, filesObj As Object, everyObj As Object
Application.ScreenUpdating = False
Set mergeObj = CreateObject("Scripting.FileSystemObject")
Set dirObj = mergeObj.Getfolder("C:\Mijn Documenten\ImportBestanden")
Set filesObj = dirObj.Files
For Each everyObj In filesObj
Set bookList = Workbooks.Open(everyObj)
Range("A1:IV" & Range("A65536").End(xlUp).Row).Copy
ThisWorkbook.Worksheets(1).Activate
Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial
Application.CutCopyMode = False
bookList.Close
Next
End Sub
_________________MACRO 2_________________
Sub FileNameAsColumn()
‘plek waar de bestandnaam dient te komen
Range("BH2").Select
ActiveCell.FormulaR1C1 = "=REPLACE(LEFT(CELL(""filename""),SEARCH(""]"",CELL(""filename""))-1),1,SEARCH(""["",CELL(""filename"")),"""")"
Range("A2").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 59).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.FillDown
Columns("BH:BH").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub