I love that the 2007 Office suite doesn't require a Microsoft account or cloud services and that it's simple and fast, just as many others surely love it too.
If you are also a fan of the 2007 office suite, you will have noticed that there is no way to open two Excel files in separate instances in parallel; they pile up on top of each other in the same window, which is not very convenient.
The least invasive solution is to open a new blank instance and open the other document from there, but it is still less natural than opening the spreadsheet directly. That is why, with the help of duck.ai, I have used the following simple code to create an .exe in Visual Studio for console C project that uses NET 8.0 to act as an intermediary between Excel 2007 and our .xls files.
using System.Diagnostics;
class Program
{
static void Main(string[] args)
{
// Path to the Excel executable
string excelPath = @"C:\Program Files (x86)\Microsoft Office\Office12\EXCEL.EXE";
if (args.Length == 0)
{
// If no arguments are provided, start a new instance of Excel
Process.Start(excelPath);
return; // Exit after starting Excel
}
foreach (var file in args)
{
// Ensure the file path is quoted
string quotedFilePath = $"\"{file}\"";
Process.Start(excelPath, quotedFilePath);
}
}
}
Just download the .zip file found in releases, unzip the folder, and place it in your favorite directory. Now go to an Excel spreadsheet and change the default program for opening it to “Excel 2007 Multiwindow.exe.” That's it! Excel spreadsheets will appear with the usual icon and open as individual instances. Obviously, this assumes that Office was installed in the default location. If the path was changed, it will not work, and it would be necessary to recompile it with the correct path for that installation.
The executable file has no malicious intent; it can be analyzed. The icon has been extracted from the original Excel 2007 executable file, and the code is as presented. Feel free to compile your own .exe file in Visual Studio if you feel more confident doing so.
Given the nature of the process, it runs a CMD command to execute Excel for each spreadsheet, which is why the CMD window can be seen briefly on less powerful machines.
I hope you find this solution very useful!