none
Opening Files in Multiple Instances of Excel 2010

    Question

  • I've been using multiple instances of Excel 2003 using two monitors for a long time using Windows XP.  I used to do this by opening Excel and opening Excel again from the Start menu and opening files through windows explorer and controlling which instance of Excel it would open because it opens based on the recent active Excel instance. For example, I open Excel program instance #1 and then I open Excel program instance #2.  If I click on the Excel program 1 and then go to windows explorer and open a file, it will open on Excel program instance #1.  If I click on instance #2 then open a file, it will open on instance #2. 

    However, now I have Windows 7 Pro with Excel 2010.  At first, it would ALWAYS open the file in the first instance of Excel whenever I opened a file from windows explorer.  I found some registry edits that will open a file in a new instance of Excel EVERY time. I don't really like either solution.  I want to control the number of Excel instances and determine which instance I want the file to open.  I know I can do this via the Open/File menu in Excel but it's a much more onerous way.  I would like to know if there is a way I can make Excel 2010 and Win7 behave the way it did before with Excel 2003 and WinXP.

    Friday, August 05, 2011 9:28 PM

Answers

  • One solution is to use a small utility that takes the file to open as argument, lists all EXCEL.exe, picks the last active one (the one with lowest z-order), get the automation controller for that window and opens the workbook file. Link to such a tool: http://tkljh.s3-ap-northeast-1.amazonaws.com/quant/tools/ActiveExcelOpen.zip You need to associate Excel files extension you use (.csv, .xls, .xlsx, .xlsm) to open with this tool.
    • Proposed as answer by Diego Regio Friday, June 21, 2013 6:25 PM
    • Marked as answer by rigs- Monday, June 24, 2013 9:25 PM
    Monday, June 03, 2013 10:45 PM

All replies

  • Hi rigs-

    I don't have a solution for getting Windows 7 to have the behaviour you would like. But I have a suggestion: you can pin the most used files under the File Tab in 'Recent'. And if you customize the Quick Access Toolbar by adding the command "Open recent file", you can reach the recent document entries more quicker with only one click.

    Regards :-)


    MVP Office System - www.excel-ticker.de
    Sunday, August 07, 2011 9:46 AM
  • Copy this .bat file to your PC, and :

    1) set Excel files to be opened with it, or

    2) Drag and drop the Excel files to this bat, the %1 will be replaced by the Excel file:

    The .bat is:

    start "Excel" "c:\Program Files\Microsoft Office\Office14\EXCEL.EXE" /e %1

    To create the bat file, you can create a .txt file and rename it after that from .txt to .bat

    It worked for me, this way I can have mutiple instances of Excel 2010 in my Win 7.

     

    Hope it helps.



    Tuesday, August 09, 2011 5:41 PM
  • This works great, just had to modify slightly for Office 2003 on Windows 7- 64 bit.

    start "Excel" "c:\Program Files (x86)\Microsoft Office\Office11\EXCEL.EXE" /e %1

    Works like a charm! What a timesaver.

    Thanks,

    Tom

    Friday, September 02, 2011 4:38 PM
  • Here's another workaround for this kind of scenario.

    I pinned Excel to my taskbar (Start, All Programs, Microsoft Office, Excel, then right-click Excel and choose to "Pin to Taskbar.")

    Now whenver I want to open that second instance, I right-click that taskbar icon and click on Microsoft Excel 2010 again. 

    To be clear, if you use that right-click-on-the-Taskbar method, it will also present you a list of recently opened files.  If you click one of the items on that list, you will not get the second instance.  But if you click on the words "Microsoft Excel 2010" that appear right above "Unpin this program from taskbar," then you will get the second instance. 


    Lady_M MCITP SharePoint 2010
    Friday, September 02, 2011 5:37 PM
  • I have this same problem.  did you ever get an answer to this.  the solutions posted below do not solve the problem.  The problem is not that when you open an excel file from windows explorer you want it to open a new instance.  the problem is you want it to open in the most recent instance of excel that you were working in.

    Example.

    I open file Apple.xls in an instance of excel. I then open file dog.xls in a different instance of excel.  if i am in explorer and i try to open file cat.xls by double clicking it will always open in the first instance of excel.  even though my my recent excel focus is the second instance of excel. 

    back in with windows xp and excel 2003 this did not happen the cat.xls file would open in the last instance of excel that had focus.

     

    -Ed

    Friday, December 30, 2011 7:52 PM
  • people posting "solutions" here have not understood the problem. i have the same problem and hence can tell you that the solutions provided do not solve problem at hand. people who have used two monitors- 1 for each instance, only can understand this problem. In W7, files opened with windows explorer open in 1st instance. Period.

     

    I feel that microsoft seems to have "downgraded" the experience by "upgrading" the OS.

    Tuesday, January 03, 2012 1:39 PM
  • Ed,

    Nobody in this forum has been able to provide the solution that you and I are looking for.  I've been scouring the internet and it seems that there is no way to make Excel behave the way it did with Excel 2003 and WinXP.  I used the registry edits that people have mentioned.  All it does is open a new instance of Excel for each file.  Also, when Windows 7/Office 2010 installed the latest updates (it set to do it automatically on my machine), it puts the registry back to the default settings.  Very frustrating :(

    Monday, January 16, 2012 11:09 PM
  • You're probably right about people without multiple monitors not quite understanding the problem.  I agree with your statement that Microsoft has made a "downgrade" with their "upgrade".  I just bought Adobe Acrobat X and their "upgrade" is just as frustrating forcing a new instance of Acrobat for each open file. So between the registry modified Excel 2010 and Acrobat X, my monitors are cluttered with instances of programs just to compare 6 files between 2 programs!  Is this progress?!?
    Monday, January 16, 2012 11:18 PM
  • how do you "set Excel files to be opened with it?" Thanks.
    Monday, February 06, 2012 11:36 PM
  • Hi smokiibear,

    1) create the .bat file , and:

    Just right click the file and choose open with, choose the default program, and browse until you can choose the .bat file to be the default program to open Excel.

    Don't forget to check the box "always use the selected program to open this kind of file"

    Hope it helps.

    Have a good day!

    Don't forget to mark the posts as helpfull if they help you, or to post again if you have questions about the answers.

    Renatoabc




    • Edited by renatoabc Tuesday, February 07, 2012 8:44 AM
    Tuesday, February 07, 2012 7:23 AM
  • Dear Renatoabc:

    Please, stop posting the same proposal over and over. It doesn't solve what it's being asked in the first post.

    Your solution always opens newly opened files in a fresh new instance of Excel.

    We have different instances of Excel open and need to open a file by double-clicking on it in Explorer, sending it to the last-used instance. It was just like this in Windows XP with Office 2003.

    In Windows 7 + Office 2010 we can only use drag and drop, which takes more time and is not even always possible to do!

    Does anybody have a different solution for this?

    Tuesday, March 27, 2012 2:15 PM
  • I really miss that functionality as well, and after scouring the web (and finding nothing but regedit references by people who don't understand) I have a non-programmatic solution.

    From Explorer, instead of double-clicking the desired file, drag-and-drop it onto the instance of Excel in which you want it opened.

    It's not as fast as the prior version functionality, but works just fine; let me know if you have any issues, or find another workaround.

    I have Win7/Office Pro 2010.

    • Proposed as answer by acbrown Wednesday, April 11, 2012 8:18 PM
    • Marked as answer by rigs- Wednesday, April 11, 2012 8:44 PM
    • Unmarked as answer by rigs- Monday, June 24, 2013 9:34 PM
    Wednesday, April 11, 2012 8:17 PM
  • Thank you for this!  This works pretty well.  It's not quite the same but functions a lot closer to what I was looking for.  Now if I can only figure out how to change this awful Excel 2010 ribbon menu back to Excel 2003!
    Wednesday, April 11, 2012 8:49 PM
  • I had already figured out the "mouse solution" some time ago. I thought we were talking about a keyboard-only solution, which I personally still miss. =(

    Congrats to acbrown for writing down the solution here thou. I didn't realize it could be helpful to somebody but he did.

    About the awful (and stupid and unneeded) Excel 2010 ribbon, I guess UBitMenu can help you.

    Wednesday, April 11, 2012 9:18 PM
  • This is the right answer to this thread. if you need something else, open a new one.
    Thursday, April 19, 2012 3:23 PM
  • Great and simple solution. I would even go as far as saying 'elegant'. Much obliged.
    Tuesday, May 15, 2012 1:59 PM
  • The .bat doesn't work from Outlook. I get a lot of emailed Excel files and often have several tasks 'running' in Excel via VBA code. In order to open a file from Outlook, I have to drag the file to the desktop and then drag it to the instance of Excel that is not running code. In order to send the completed file back to the requestor, I have to save it, and then drag it back to a reply email. Extra steps = wasted time.

    Wish they'd go back to using z-order for opening files, rather than primary instance.

    Anyone know if there is a way to change the behavior of Outlook? You can't right click and choose an instance of Excel. You can't drag-drop to a batch file.

    Seems like they dumbed it down for people who don't undertand security so nobody can say they got a bad file that caused a virus on their computer.

    Monday, June 04, 2012 1:28 PM
  • I am using my laptop as my primary screen and my monitor as my secondary screen. In the old days, I had a driver on my computer that allowed me to do this, and now I think all laptops have this capability. My problem is: I want to have 2 excel sessions open and I want to choose where an excel file is sent to open. I can do this for any file I have on my computer (C drive) or shared drives (T drive or H drive) because I can just go to the chosen session and open the file there (so any file on Explore I can choose.). My problem happens when I open a file either from Sharepoint (a shared site in Internet Explorer) or an excel attachment to an  Outlook email. I have tried to click on the excel session I want it to open in to "activate" it and then go to Sharepoint or Outlook and open the excel file. Unfortunately, the file does not always open in the session I have "chosen" for it. Any ideas on how to get the file(s) to open where I want them to open without first having to save them to my computer or T/H drive?

    Tuesday, July 10, 2012 5:15 PM
  • I am using my laptop as my primary screen and my monitor as my secondary screen. In the old days, I had a driver on my computer that allowed me to do this, and now I think all laptops have this capability. My problem is: I want to have 2 excel sessions open and I want to choose where an excel file is sent to open. I can do this for any file I have on my computer (C drive) or shared drives (T drive or H drive) because I can just go to the chosen session and open the file there (so any file on Explore I can choose.). My problem happens when I open a file either from Sharepoint (a shared site in Internet Explorer) or an excel attachment to an  Outlook email. I have tried to click on the excel session I want it to open in to "activate" it and then go to Sharepoint or Outlook and open the excel file. Unfortunately, the file does not always open in the session I have "chosen" for it. Any ideas on how to get the file(s) to open where I want them to open without first having to save them to my computer or T/H drive?

    Tuesday, July 10, 2012 5:16 PM
  • After reading this thread I came to this solution:

    copy a linke to the excel.exe to the sendto directory. This works definitively fine:

    Open the SendTo directory (W7):

    C:\Users\   [your user name]  \AppData\Roaming\Microsoft\Windows\SendTo

    Open the Office directory:

    C:\Program Files (x86)\Microsoft Office\Office14

    and create a link to Excel.exe

    Move the Link to the SendTo directory.

    Now you can open the Excel-files by right click > send to > MS Excel

    Thursday, August 23, 2012 6:58 AM
  • Thank you so much. I had been struggling a while.  Works a treat.

    Thanks.

    Richard

    Friday, September 14, 2012 7:23 PM
  • Hi guys!

    This is a well known issue in Excel, and fortunatelly MIcrosoft offers a fix to this problem, and now you can open many instances of Excel and place them in multiple minotors.

    Go to  http://support.microsoft.com/kb/2636670

    And choose "FIX IT" or do the fix manually by yourself.

    I used the first option and it worked just fine.

    I hope Diego Regio is happy now.

    Regards

    Renatoabc


    • Edited by renatoabc Sunday, September 16, 2012 9:07 AM
    • Proposed as answer by renatoabc Sunday, September 16, 2012 9:09 AM
    Friday, September 14, 2012 11:50 PM
  • Hmm, it seems it´s really hard to undestand, what our problem is all about.

    Even the solution http://support.microsoft.com/kb/2636670 isn´t the right answer.

    Ok, i´ll try again:
    - i have 2 Excel-Instances running (can see it with TaskMgr) and i don´t want any more Excel-Instances starting
    - for several reasons (data-comparison side-by-side on 2 monitors, etc.), i´d like to control, in which instance
      double-clicked XLS-Documents from Mails, Web-Downloads or (most wanted!) PlSql-Developers
      "Export to Excel"-function should open
    - with Office2003 / WinXP it was very simple:  just activate the desired Excel instance before doing
      the double-click or calling the export-function ... the XLS-Document opens exactly in a new window
      of the previously activated Excel-instance

    So it´s not about opening always in new Excel-Instances, therefore all .bat-Solutions or Registry-
    modifications i´ve seen so far wont help. Also the mouse-drag/drop will not work for Web-Downloads
    or Database-Exports, even sometimes not for XLS in Outlook-Mails.

    Yes, i agree:  Win 7 / Office 2010 is a massive downgrade for all users, that need informations on the
    screen (instead of large, fancy icons), that want fast and efficient functionality (instead of clicking around
    through "ribbons" and waiting more than twice a time for same operations, that run in XP/Office2003 simply great)

    After digging the web, experimenting with registry-hacks, etc., i didn´t find any REAL solution.
    That´s why i feel, all those of you (incl. me), that have used their machines like described above, have lost.

    Resignated, i wish i could switch back to XP/Office2003

    Regards
    CptTom

    Wednesday, September 19, 2012 3:40 PM
  • CptTom, you are correct that nobody has provided the solution we are looking for (which is basically the way Excel 2003 behaved under WinXP).  The way you work with Excel sounds very much like the way I use it as well (2 monitors with 2 instances of Excel used to compare between spreadsheets and such). 

    The best answer I got from this forum is from acbrown.  He suggested that you drag and drop the file from Windows Explorer to the instance of Excel you want it to open in.  This has worked for me for about 95% of the time.  The only downside is that I can't control which instance of Excel to use when I open attachments from emails.  I have to first save it in a directory and then drag it to the instance of Excel I want it to open.

    I've pretty much accepted the fact that this is probably the best I'll be able to do.  Thanks again to acbrown for bringing up the drag and drop tip!

    Wednesday, September 19, 2012 4:46 PM
  • ...and if you have this .bat file, for example excel-new-session.bat, with

    start "Excel" "c:\Program Files\Microsoft Office\Office14\EXCEL.EXE" /e %1

    in it, you can Right-Click the file icon, choose "Opn with...", find the excel-new-session.bat and....

    use the "Always open with this application" tick-box option. You will always open in a new session!

    For WINWORD this is the same, only:

    start "Word" "c:\Program Files\Microsoft Office\Office14\WINWORD.EXE" /e %1

    need to be put into the word-new-session.bat file.

    Saturday, October 20, 2012 4:40 PM
  • Unfortunately I ran the "fix it" and there was no difference.  I'm using MS Excel 2010 on Windows XP.

    Saturday, December 01, 2012 12:50 AM
  • File>Options>Advanced>General>Ignore other applications that Dynamic Data Exchange(DDE)
    Wednesday, December 12, 2012 6:58 PM
  • This doesn't solve CptTom's and rigs-'s problem. Does Microsoft have a fix for this?

    Friday, December 14, 2012 4:08 PM
  • One solution is to use a small utility that takes the file to open as argument, lists all EXCEL.exe, picks the last active one (the one with lowest z-order), get the automation controller for that window and opens the workbook file. Link to such a tool: http://tkljh.s3-ap-northeast-1.amazonaws.com/quant/tools/ActiveExcelOpen.zip You need to associate Excel files extension you use (.csv, .xls, .xlsx, .xlsm) to open with this tool.
    • Proposed as answer by Diego Regio Friday, June 21, 2013 6:25 PM
    • Marked as answer by rigs- Monday, June 24, 2013 9:25 PM
    Monday, June 03, 2013 10:45 PM
  • In Windows 7 right click on the task bar and select properties.  When the box opens in the middle of the screen "Task Bar Buttons" hit the drop down and select "Never Combine"
    Friday, June 21, 2013 2:16 PM
  • In Windows 7 right click on the task bar at the bottom and select properties.  In the next window where "Task Bar Buttons" click the drop down and select "Never Combine" hit apply and then OK.
    • Proposed as answer by renatoabc Friday, June 21, 2013 2:44 PM
    Friday, June 21, 2013 2:22 PM
  • I tested this solution in a Win7 + Excel 2013 PC, it worked just fine.

    Easy and clean.

    Thank you very much.

    Renatoabc

    Friday, June 21, 2013 2:47 PM
  • Hi Claude, your solution is the best one! The only problem is: when no Excel instance is running and you double clic an Excel file, this app says there is no Excel instance running. Instead of saying so, in this case it should open the file (with the default shell app).

    Thank you for your simple and great fix!

    Friday, June 21, 2013 6:25 PM
  • Hi Diego!

    It looks strange to me. When there is no Excel file opened and I click on one Excel file it opens with no diference from before the fix settings on the taskbar.

    And after that if I click on a second Excel file it opens And I can see both on my screen, I just have to move or resize the one I like.

    It's long ago when this post was started and it's amazing that even after 2 years there are still people who devote time and attention to an unsolved problem.

    It's what make this forum so reliable and useful.

    Tanks ShannaHull and everybody who spent some of the free time to help others.

    Regards,

    Renatoabc

    Friday, June 21, 2013 9:07 PM
  • Claude,

    Thank you for this solution.  This provides the closest solution to the original problem I posted.  The only negative is that the utility doesn't automatically open an instance of Excel if you don't have one open already. I had been using the solution provided by acbrown up until now.

    Monday, June 24, 2013 9:30 PM
  • Hey Claude,

    This solution works great.

    Would you mind posting your source code for this exe?

    Monday, July 22, 2013 8:09 PM
  • I have read multiple responses to this question.  From the discussions, the main issue stems from the MDI interface.

    The long term solution would be for the MDI to be extended to handle multiple simultaneous output windows such as multiple monitors, linked tablets, phones etc more flexibly.

    I have handled this in the past by stretching the single Excel instance across both monitors, and opening both documents in the same window.   However, this is awkward and wastes space with window borders.   It also does not allow me to Maximize sheets or windows this way.  This is especially awkward when monitor resolutions don't match cleanly.

    Ideally I would be able to maximize or full-screen Excel across multiple monitors, and selectively maximize documents in each.


    Friday, August 02, 2013 11:32 AM
  • Go to the Office circle (top left), go down to Excel Options, Advanced, scroll down to General, and check "Ignore other applications that use DDE." The main disadvantage of enabling two instances is that it nearly doubles your resource usage.
    • Proposed as answer by Tzadi Tuesday, August 13, 2013 5:26 PM
    • Edited by Tzadi Tuesday, August 13, 2013 5:28 PM
    Tuesday, August 13, 2013 5:26 PM
  • Perfect solution ! Thanks
    Tuesday, October 22, 2013 4:16 PM
  • Using Windows 8 & Office 2010, this at least opens each page in a new version of Excel.  Without adding *.bat files or manually changing the registry.  Thank you.

    Wednesday, December 11, 2013 5:04 PM
  • In Windows 8, you can open a second (empty) instance of Excel by going to the Start menu, RIGHT-clicking on the Excel icon, and selecting "Open New Window." This is an ideal solution in some ways, because it gives you a clear choice between "open in existing instance" (default behavior) and "open new window" (when you want to). It is NOT ideal in that after opening the new blank window/instance, you now have to open the spreadsheet you want as a separate/additional step.
    Friday, January 10, 2014 6:58 PM
  • I don't get how to create the .bat file. Can you help?

    I do want a NEW version of excel opened every single time. If I want one opened in the same instance I have opened, I will open via file - open in that instance. 

    Thanks!

    Tuesday, January 21, 2014 5:03 PM
  • Copy this .bat file to your PC, and :

    1) set Excel files to be opened with it, or

    2) Drag and drop the Excel files to this bat, the %1 will be replaced by the Excel file:

    The .bat is:

    start "Excel" "c:\Program Files\Microsoft Office\Office14\EXCEL.EXE" /e %1

    To create the bat file, you can create a .txt file and rename it after that from .txt to .bat

    It worked for me, this way I can have mutiple instances of Excel 2010 in my Win 7.

     

    Hope it helps.



    Thanks for this! Worked like a charm!
    Friday, February 21, 2014 5:17 AM
  • Hi,

    On a Windows 7 Pro 64-bit system, juste create a reg file with the below entry (for Excel 2010).

    Each time you want to open an Excel file in a new instance, just right click on the file and choose "Open in a new app instance"...

    Like this you can control the number of Excel instances and determine which instance you want the file to open.

    --------------------------------------------

    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\Open_In_New_App_Instance]
    @="Open In New App Instance"

    [HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\Open_in_New_App_Instance]
    @="Open in New App Instance"

    [HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\Open_In_New_App_Instance\command]
    @="\"C:\\Program Files (x86)\\Microsoft Office\\Office14\\EXCEL.EXE\"  \"%1\""

    [HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\Open_in_New_App_Instance\command]
    @="\"C:\\Program Files (x86)\\Microsoft Office\\Office14\\EXCEL.EXE\" \"%1\""

    [HKEY_CLASSES_ROOT\Excel.SheetMacroEnabled.12\shell\Open_In_New_App_Instance]
    @="Open In New App Instance"

    [HKEY_CLASSES_ROOT\Excel.SheetMacroEnabled.12\shell\Open_In_New_App_Instance\command]
    @="\"C:\\Program Files (x86)\\Microsoft Office\\Office14\\EXCEL.EXE\"  \"%1\""


    Wednesday, April 16, 2014 2:39 PM
  • One solution is to use a small utility that takes the file to open as argument, lists all EXCEL.exe, picks the last active one (the one with lowest z-order), get the automation controller for that window and opens the workbook file. Link to such a tool: http://tkljh.s3-ap-northeast-1.amazonaws.com/quant/tools/ActiveExcelOpen.zip You need to associate Excel files extension you use (.csv, .xls, .xlsx, .xlsm) to open with this tool.

    The answer for almost a full year is to use a nonmicrosoft 3rd party tool?

    How about a microsoft solution for users that work in enterprise size companies locked down by Group Policies.

    Wednesday, April 16, 2014 3:21 PM
  • Here is a macro I use, which I linked to the quick access toolbar. I normally want everything in the same instance of Excel, but I have some reports that I open in separate instances so each can can use a separate CPU core to process in parallel. This allows me to do so quickly and easily.

     Sub OpenMultipleFiles()
          Dim FileNames As Variant
          Dim Msg As String
          Dim i As Integer
          FileNames = Application.GetOpenFilename(MultiSelect:=True)
          If IsArray(FileNames) Then
              For i = LBound(FileNames) To UBound(FileNames)
                    Set oXL = CreateObject("Excel.Application")
                    oXL.Visible = True
                    oXL.Workbooks.Open FileNames(i), ReadOnly:=False
              Next i
          Else
              MsgBox "No files were selected."
          End If
      End Sub

    Wednesday, April 16, 2014 5:10 PM