Иногда приходится решать задачи, которые админскими не назовешь, но пользователи сами решить не могут. Один из таких примеров — открытие документов Excel в разных процессах. По умолчанию, Excel 2010 не позволяет расположить рядом на одном экране 2 открытых документа. Также, невозможно разместить 2 документа одновременно на двух мониторах. Исключение составляют те случаи, когда первый документ мы открыли «как обычно» двойным кликом по нему, затем запустили еще одну копию Excel и открыли второй документ в нем. А между тем, эта фича довольно полезна: если у вас «упадет» excel из-за кривых VBA-скриптов — закроются не все документы, а только упавший. Да и легче сравнивать и переносить данные из одного документа в другой.
К счастью, решение этой проблемы, по крайней мере для Office 2010 существует. Необходимо всего-то изменить парочку записей в реестре:
1. Открываем regedit (Win+R->regedit->Enter);
2. Переходим в HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\Open\command;
3. Кликаем дважды на ключе (Default) справа и изменяем строку на такую (т.е. в конце строки меняем /dde на /e «%1»:
"C:\Program Files\Microsoft Office\Office14\EXCEL.EXE" /e "%1"
4. Переименовываем ключ command в command2;
5. Переименовываем раздел ddexec в ddexec2.
6. Пользуемся :)
Если захочется открывать так не только xlsx файлы, но и xls — достаточно проделать эти же операции с веткой HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\Open\command