Excel 2010, в отличии от более ранних версий, по умолчанию открывает новые файлы Excel в одном родительском окне. Вероятно, такое поведение Excel 2010 вызвано желанием разработчиков сэкономить ресурсы оперативной памяти на компьютере пользователя, ведь в этом случае порождается всего один, а не несколько независимых процессов excel.exe. Но это решение иногда вызывает у пользователей определенные неудобства, так, например, при необходимости работать одновременно с двумя (и более) электронными книгами Excel – переключаться между разными книгами в рамках одного окна крайне неудобно.
Тот же Word 2010 ведет себя по-другому – каждый новый документ открывается в отдельном окне.
Сегодня мы покажем, как для Excel 2010 настроить открытие файлов в отдельных окнах. Такое поведение Excel особенно удобно при работе на компьютере с несколькими мониторами и позволяет разнести документы на разные мониторы и работать с ними одновременно (особенно часто так поступают различные бухгалтера, экономисты, статисты и другие «повелители» электронных таблиц).
- В первую очередь нужно определить на какой раздел реестра ссылается тот или иной тип файла Excel. Например, если нас интересуют файлы с расширением .xls, откройте редактор реестра (regedit.exe) и перейдите в раздел HKEY_CLASSES_ROOT\.xls. Нас интересует значение параметра (Default), В нашем примере в нем указано Excel.Sheet.8. Это означает, что параметры открытия этого типа файлов Excel задаются в разделе HKEY_CLASSES_ROOT\Excel.Sheet.8. Для файлов типа .xlsx – это будет раздел HKEY_CLASSES_ROOT\Excel.Sheet.12.
- Важно! Перед модификацией реестра настоятельно рекомендуем создать резервную копию ветки, параметры в которой вы правите. Для этого щелкните ПКМ по нужному разделу реестра, выберите пункт меню Export и укажите имя reg файла, в котором нужно сохранить параметры этого куста реестра.
- Перейдем в раздел реестра HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\Open\command. Заменим значение ключа: (Default) с «C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE» /dde на «C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE» /e “%1“. Т.е. в вместо /dde нужно указать /e “%1”.Примечание. В нашем примере используется 32-битная версия Office 2010, запущенная на 64-битной версии Windows 7. В 32 битной ОС путь к файлу EXCEL.EXE другой.
- В этом же разделе переименуйте название ключа command, например в commandold.
- Переименуйте (или удалите) раздел HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\Open\ddeexec, например в ddeexecold (ПКМ по ветке – Rename)
- Теперь попробуйте открыть несколько xls файлов – каждый из них должен открыться в отдельном независимом окне Excel 2010.
- Пункты 3-5 нужно повторить для каждого типа файлов, которые Excel должен открывать в отдельном окне (как определить нужную ветку реестра описано в п.1).
Чтобы не возится с ручной правкой реестра, мы подготовили 2 готовых reg файла (архив находится здесь):
- Excel2010SeparateOn.reg – включает открытие файлов Excel (.xls, xlsx, xlsm и xlst) в отдельном окне
- Excel2010SeparateOff.reg – возвращает стандартные настройки, когда все документы открываются в рамках одного родительского окна
Шикарно 🙂
Предлагаю в архив excel2010separate.zip добавить ссылку на данный пост.
🙂 архив перезалил
Огромное спасибо за хак — не знал!
Всегда напрягало, что 2010 excel открывает все книги в одном окне — думал так задумано и ничего поменять нельзя!
Заметил, что в режиме когда документы открывается в независимых окнах, памяти потребляется больше. Например, в обычном режиме (3 документа xlsx в одном окне) порождается один процесс excel.exe, потребляющий 40 мб памяти.
Если эти же документы после патча реестра открыть в отдельных окнах, в системе висят три процесса excel.exe , суммарно они отъедают 84 Мб (29Мб+28Мб+27Мб)
Так что этот режим явно не для нетбуков и маломощных систем.
Проверил у себя: при применении Excel2010SeparateOn.reg любой файл открывается как НАЗВАНИЕФАЙЛА1.xls, т. е. добавляется «1» к «НАЗВАНИЕФАЙЛА.xls». Разные файлы открываются в разных excel — ях. Применяешь Excel2010SeparateOff.reg и при открытии не добавляется «1» и происходит оно в одном excel.
ОС Windows 7 x64 с Office 2010 x32. Все обновления установлены.
Ага, спасибо, тоже заметил такой глюк…. Он возникает после того как 2 раза переключитесь с помощью этих скриптов между разными режимами Excel.
Чтобы такой глюк не наблюдался — удалите в ветках
HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\Open\command
HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\Open\command
ключи command
Завтра постараюсь reg файлы переделать или запилить bat-сценарий, который бы все ключи корректно модифицировал и чистил.
Спасибо большое за статью!
Все информативно и удобно расписанно
Доброго времени суток!
Большое спасибо за статью, но как быть с win 8, там вообще нет этих веток реестра. Менять нечего. И в свойствах папки нет типов файла, чтоб там изменить. Как быть восьмёрочникам? Помогите чем можете.
есть там эти ветки.
И все работает, только нужно вставлять ТОЛЬКО верхние кавычки везде, никаких нижних!!
в смысле, везде заменить верхние кавычки на нижние при редактировании.
Это касается не только Win 8, но, думаю, и всех остальных.
У меня одного после применения этого метода перестали работать функции между файлами в разных окнах? (Если открывать в одном окне функции работают нормально) Например простая функция файл1\ячейка_А1= клик левой клавишей мыши по файл2\ячейка_А1 Enter
Как решили проблему?
Спасибо большое
У меня нет таких папок как у вас в .Exel.Sheet.12. Там только папка ShellNew и все
А можно ли такие же скрипты для Word , пожалуйста ?
Word по умолчанию открывает документы в отдельных окнах. Разве у вас не так? Какая версия Word?
Я на WinXP x86 проинсталировал MS Office 2010 Free , и документы у меня открывались только во вкладках , как в Word так и в Excel . Я скачал ваш REG-файл и мне помогло. Excel теперь открывает документы в разных окнах. А вот с Word разобраться не могу… Если можете, дайте пожалуйста аналогичный REG для Word
Go to File > Options > Advanced, scroll down to the Display section, and check the box for «Show all windows in the Taskbar».
Благодарю. Очень помогло. Воспользовался готовыми файлами реестра.
у меня руки корявые и теперь у меня ексель не открывается так что будте осторожны господа.
А можно просто держать SHIFT и нажать на окно программы в Панели задач — откроется в новом окне.
Хм, Ваш трюк работает — создается отдельный независимый процесс Excel!!!
Спасибо, не знал!
Здорово! и просто. Спасибо!
Фуру лайков на это сообщние!
спасибо большое! очень полезная статья, воспользовался готовыми reg файлами, теперь все в отдельных окнах. про ключи command только не забывайте (выше написано), чтоб в названии единичка не появлялась.
после использования рег. файла эксель открывается в новом окне, но между файлами формулы не переносятся, только значения, и выскакивает предупреждение по этому поводу. Как с этим бороться?
В Excel действительно не работает копирование формул между различными инстансами (процессами) excel.exe. Корректное копирование осуществляется между книгами в рамках одного процесса.
Как обходное решение — можно скопировать формулу как текст:
1) Выделяете ячейку, формулу которой нужно скопировать
2) ЖметеF2 (режим редактирования)
3) Копируете значение формулы (Ctrl+C)
4) Вставляете формулы (Ctrl+V) в режиме редактирования (F2) во втором окне Excel
после установки reg файлов документы excel не открываются. Пишет «Это действие доспускается только для установленных продуктов. Другой рег-файл откат не дал, пишет то же самое. Как теперь быть?
Версия Office 2010 Pro?Резервную копию ветки реестра делали?
Попробуйте руками назначить ассоциации на xls и xlsx файлы- «открыть с помощью», excel.exe, «всегда использовать данную программу»
Ассоциация не помогала, пробовал.
Проблема решена иным путём, может кому-то пригодится, на тот случай, как и у меня, когда резервную ветку не сохранял.
Для восстановления работоспособности Excel я отправился в Панель управления (WIN 7) (просмотр по категориям -> удаление программы). Затем в поле удаления программы нашёл Microsoft Office, выбираем его и выше списка программ находим кнопку — восстановить. Нажимаем и проходим процедуру восстановления Office. после завершения процедуры и перезагрузки старая система реестра восстановилась, пользоваться вновь возможно, документы открываются.
Все сработало только вот теперь функция ВПР не работает когда нужно указать диапазон из другой книги.
Не срабатывает на Office x64.
Окна действительно открываются в разных процессах, но невозможно открыть конкретный файл «не удаётся найти…» В справке MS указано, что такая ошибка возникает, из-за параметра “%1”. Решения пока не нашел.
В Defolt пропиши «C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE» /e «%1»
И в command тоже пропиши xb’BV6!!!!!!!!!MKKSkEXCELFiles>VijqBof(Y8’w!FId1gLQ /e «%1»
ddeexec удали
Отлично! Но к чему такая заморочка со стороны Майкрософта? Неужели нельзя было это реализовать в настройках Excel? =)
СПАСИБОООООО ОГРОМНОЕ,
я простой бух, и в в reg-файлах ничего не понимаю,
работаю много, с разными доками сразу,
очень помогли файлами,
автору низкий поклон!!!
Поправка:
Сделал как тут написано и у меня открываются excel файлы без содержимого, т.е. документ не открывается, а открывается пустое окно excel.
Мне помогло следующее:
В разделах реестра HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\Open\command удалить параметр command.
Огромное Спасибо
Можно проще, просто убрать галочку в меню/
Файл-Параметы-Дополнительно-Экран-Показывать все окна на панели задач
Этот способ не катит! Когда в реестре будет лежать эта штука, хоть ставь галочку, хоть не ставь, файлы будут открываться в одном окне. Галочка будет влиять только на отображение в панели задач.
Есть на эту тему и видео. Но автор этого поста превзашел даже его. Так хорошо описать: с толком, чувством, расстановкой. Спасибо огромное!
Добрый день.
После проведения данной операции всё хорошо открывается отдельно. Но создаётся новая проблема. Все открытые файлы работают в отдельных процессах. Таким образом не работают формулы.Т.е. формула буквально не видит второй открытый файл. Уже не однократно сталкивался с подобной ситуацией. Изначально всё работает хорошо. Два открытых Excel файла можно поместить рядом. И манипулировать с формулами. Но в какой-то момент это перестаёт работать.
Безграничное СПАСИБО!!!!!!!!
После правки реестра вручную — при открытии документа пишет, что его не существует.
После применение приложенного файла — «Это действие допускается только для установленных продуктов»
Такая же ерунда, произошла. Документы вообще перестали открываться. Только открыть Эксель и только открывать через меню. Сейчас буду вручную, приводить в прежнее положение.
Случилось тоже самое, как это исправить?
Огромное спасибо! Всё успешно и безупречно.
Доброго времени суток, а вот в windows 10 нет такой ветки в реестре. help.
Спасибо большое ! в Microsoft office 2016 ветки немного другие. Благодаря информативности статьи разобрался быстро.
зачем выкладывать reg-файлы с ошибкой??? или исправьте или удалите!!!
И ещё — если удалить или переименовать ключ ddeexec, то вы не сможете копировать формулы из одной книги в другую — будет выдаваться ошибка!
Или просто удалить приложение Office tab и не пользоваться костылями.
как оказалось есть официальный фикс от мелкасофт гуглится по MicrosoftEasyFix50801