Hello tapapad,
This macro will open a workbook in an new instance of Excel from the workbook the macro is in. Each time you call the macro, the named workbook will be opened in another instance of Excel. Place this macro in a standard VBA module.
'Written: April 06, 2008
'Author: Leith Ross
'Summary: Opens an Excel workbook in a new instance of Excel.
Private Declare Function ShellExecute _
Lib "Shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hWnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Sub StartNewExcelInstance(WkbFullName As String)
Dim CmdLine As String
'Command line string - file names must include quotes
CmdLine = "/e " & Chr$(34) & WkbFullName & Chr$(34)
'Open the Workbook in another instance of Excel
RetVal = ShellExecute(0&, "", "EXCEL.exe", CmdLine, vbNullString, 1&)
End Sub
Adding the Macro
1. Copy the macro above pressing the keys CTRL+C
2. Open your workbook
3. Press the keys ALT+F11 to open the Visual Basic Editor
4. Press the keys ALT+I to activate the Insert menu
5. Press M to insert a Standard Module
6. Paste the code by pressing the keys CTRL+V
7. Make any custom changes to the macro if needed at this time
8. Save the Macro by pressing the keys CTRL+S
9. Press the keys ALT+Q to exit the Editor, and return to Excel.
Calling the Macro
StartNewExcelInstance "C:\My Documents\Test.xls"
Sincerely,
Leith Ross
Bookmarks