• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

meerdere bestanden samenvoegen tot één bestand

  • Onderwerp starter Onderwerp starter C1988
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

C1988

Gebruiker
Lid geworden
10 feb 2015
Berichten
43
Hoi,

Weet iemand of het mogelijk is om excel meerdere bestanden te laten samenvoegen tot één bestand?
De bestanden hebben 1 werkblad en allemaal dezelfde indeling.
Het liefste een oplossing zonder VBA te gebruiken, ik ben hier helaas niet zo in thuis.

Alvast bedankt!
 
Zonder VBA?

1) open alle samen te voegen bestanden
2) selecteer het tweede bestand
3) rechtsklik op het tabje
4) kies "Verplaatsen of kopiëren..."
5) kies bij "Naar map:" het eerste bestand
6) kies bij "Voor blad:" bijvoorbeeld voor (naar einde gaan)


Herhaal dit tot alle bestanden samengevoegd zijn in één....
 
Helaas zijn het veel te veel bestanden om allemaal te openen :(
Mocht het zonder VBA niet mogelijk zijn heeft er dan iemand een manier om dit met VBA te doen?

Dank alvast.
 
VBA is niet eng.
Ik veronderstel dat alle bronbestanden in dezelfde map staan en een extensie .xlsx hebben.
Plaats onderstaande code in een module van het doelbestand en pas het pad met de bronbestanden aan in de code.
Je kunt ook de bijlage als doelbestand gebruiken. Dan kun je het pad met de bronbestanden aanpassen in cel D10.
Code:
Option Explicit

Const Pad = [COLOR="#FF0000"]"C:\Users\Public\Documents\Split\"[/COLOR]

Sub tsh()
    Dim ScName
    
    For Each ScName In Split(CreateObject("Wscript.Shell").Exec("cmd /c dir """ & Pad & "*.xlsx"" /b").StdOut.ReadAll, vbCrLf)
        If Not ScName = "" Then
            With GetObject(Pad & ScName)
                .Sheets(1).Name = Replace(ScName, ".xlsx", "")
                .Sheets(1).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
                .Close 0
            End With
        End If
    Next
End Sub
 

Bijlagen

Laatst bewerkt:
Variant:

Code:
Sub M_snb()
  c00= [COLOR=#FF0000]"C:\Users\Public\Documents\Split\"[/COLOR]
  sn= filter(Split(CreateObject("Wscript.Shell").Exec("cmd /c dir """ & c00 & "*.xlsx"" /b/s").StdOut.ReadAll, vbCrLf),".x")

  For Each it In sn 
    sheets.add ,sheets(sheets.count),,it
  Next
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan