Professor Excel

Comments 16

  1. Daniel Wise


    I want a routine to compare and merge some workbook into one or only merge some workbooks into one. I don’t want a only copy a sheet, no…. I want to MERGE copies of one workbook into one.

    I hope you can help me


  2. Sharyn

    Hi. I used method 4 to merge numerous excel files into one workbook.

    After each file it gives me a message that says “The name ‘NvsInstanceHook’ already exists. Click Yes to use that version of the name or click No to rename the version of ‘NvsInstanceHook’ you’re moving or copying”
    I click yes. Then it asks me if I want to save or not save the file. I click not save,

    How do I get the script to automate answering both those prompts so I don’t need to manually select?

    Also, how do I save this script so I can keep using it over and over again?

  3. Jacqui


    I used the VBA method which worked like a charm except I had to click “save” after every file was processed. Is there any way to include that in the module?



    • Henrik Schiffner

      Hi Jacqui,
      Please replace this line:


      by these lines:

      Application.DisplayAlerts = False
      Application.DisplayAlerts = True

      This should avoid the error messages. But please make sure that your work is saved…

  4. Brent R.

    “Method 5: Automatically merge workbooks
    The third way is probably most convenient:”

    Is that a “Monty Python & the Holy Grail” reference? 😀

    • Henrik Schiffner

      Haven’t seen it actually. But I corrected the mistake… it’s the fifth way 😉

  5. Jonas Tiger

    I tried method 4 (VBA) and it works fine for a simple merge.
    But what I want is to update the merge task withou duplicate sheets.
    I have three large files updating in a daily basis (each one with one sheet). Then i need to merge all of them into one evaryday.
    Using your method 4 for second time, it duplicates sheets, instead of replacing the existing sheets.

    So, it would be nice if you provide the changes needed in your code to do the update and, if possible, to execute automatically every 24 hours.

    Thank You very much for your time

  6. hari

    i want to combine a specific sheet from the source files to a work book. Not all the work sheets in the source files.Suppose three product files , (product1 , product2 and product3) all the files has many sheets like sales,employees, expenses and so on. But i need only sales sheets from all the 3 product files into one work book (not in one work sheet)

    • Henrik Schiffner

      Hi Hari,
      I’m working on an advanced merge function for my add-in. But it’ll take some time.
      Best regards,

  7. vvs

    when i used vba code it worked fine but i want all the data to merged in one single worksheet instead of seperate worksheets in one workbook.

  8. vvs

    Hi Henrik,
    Instead of running the code twice is there any chance that merging the data from different works books into one single workbook on one tym running the vba code .

  9. Jo

    What if you aren’t merging workbooks (.xlsx), but other data files saves as .csv, or .txt, or .dat .. can the VBA script handle those?

  10. sherazad


    Thanks very much for your code, I tried it, it works but I have this error message: Run-time error ‘1004’ Method ‘Copy’ of object ‘Worksheet’ failed, could you please help me on this.

    Best regards.

  11. vvs

    Hi Henrik, the code corked fine. now ,i want to delete the header rows in the merge file when it is executed and should display only final header row at the top but not all the header rows.

Leave a comment