MyTetra Share
Делитесь знаниями!
Как открыть новый Excel в отдельном окне
Время создания: 29.07.2019 01:07
Текстовые метки: newexcel, newprocess
Раздел: !Закладки - MSO - Excel
Запись: xintrea/mytetra_db_adgaver_new/master/base/1564351635jx6xblcx6i/text.html на raw.githubusercontent.com

В дополнение к пункту 3 ключ /x можно применить не только в окне "Запуск", но и в ярлыке, скажем, на рабочем столе.
Для этого нужно создать обычный ярлык для приложения Экселя, и потом в свойствах на вкладке "Ярлык" в окошке объект дописать к пути к файлу этот ключ после кавычек типа такого:
"C:\Program Files (x86)\Microsoft Office\Office16\EXCEL.EXE" /x
В таком случае этот ярлык всегда будет открывать новую копию приложения.


Считаю, что открывать отдельный экземпляр Excel и через меню Файл искать необходимый документ не очень удобно, особенно в корпоративной среде, где много файлов размещены на различных файловых ресурсах.
Поэтому для себя еще во времена Office 2010 делал пункт в меню "Отправить" Проводника под названием "Открыть в Excel".

Для этого в папке "C:\Users\ПОЛЬЗОВАТЕЛЬ\AppData\Roaming\Microsoft\Windows\SendTo" размещал ярлык к исполняемому файлу Excel.
Сейчас, в Office 2019 в строку запуска нужно добавлять ключ /x, например так:

Открыть в Excel
"C:\Program Files (x86)\Microsoft Office\root\Office16\EXCEL.EXE" /x

Кроме того, зачастую в корпоративной среде требуется открыть файл для чтения - чтоб не блокировать другим пользователям полный доступ к файлу. Для этого добавил еще один ярлык "Открыть в Excel для чтения", а в строке запуска добавил еще ключ /r. Для Excel 2019 это выглядит так:

Открыть в Excel для чтения
"C:\Program Files (x86)\Microsoft Office\root\Office16\EXCEL.EXE" /x /r
Для Excel 2010 нужно убрать ключ /x и соответственно изменить путь к исполняемому файлу.

Я делаю немного по другому.

Обычно закрепляю значок Excel в Панели задач (правой кнопкой - Закрепить значок).
Потом жму на него правой кнопкой, подвожу к строке Excel и опять правой кнопкой. Выбираю пункт Свойства и в поле объект добавляю /x

Чтобы было:

"C:\Program Files\Microsoft Office\root\Office16\EXCEL.EXE" /x
После этого все запускаемые копии Excel независимы и всегда доступны, так как Панель задач видна постоянно.

Но главный выигрыш от независимости Excel, для меня во всяком случае, это возможность открывать копии программы на разных рабочих столах в Windows 10, что позволяет быстро переключаться между ними.

Добрый день. Воспользовалась Вашим советом. Вот только окна всё равно открываются параллельно, если открывать их, допустим, с рабочего стола (у меня несколько файлов там находятся). Т.е., если я где-то поработала, закрываю этот файл, то потом всё равно приходится сворачивать остальные открытые файлы excel, потому что они оказываются развёрнутыми.
А вот если входить в новый файл через строчку excel в закреплённом значке на панели задач по правой кнопке мыши, то действительно окна становятся полностью автономны. Нюансы, однако.

Надо же, сколько способов...
А я по дремучести своей пользуюсь только одним топорным способом: в первом окне Excel запускаю долгий макрос, а во время его работы потом в Проводнике двойным щёлком запускаю нужный второй файл и он открывается в новом Excel.
Правда, новый экземпляр Excel ругается из-за ограничения доступа к личной книге макросов, но це вже неважливо...

Доброго времени суток!
Прекрасно работает! Спасибо большое! Давно искал такую штуку!

Макросом открываю нужную книгу в отдельном апликейшн! А как закрыть макросом отдельный апликейшн???

Доброго времени суток!
Макрос прекрасно работает! Спасибо огромное!

А как макросом можно закрыть открытый New_Application ???


Добрый день.
VBScript - отличное решение. А как насчет такой практической реализации:
Excel уже открыт, несколько окон, в них идет работа.

  1. Нужно открыть другой файл, в моем случае – макрос обновляет запросы PowerQuery, что занимает 3 мин в офисе и 15 мин из дома по VPN.
  2. Пока идет обновление, я продолжаю работать в первом Excel.

Т.е. нужно открыть VBScript’ом второй Excel, заданный файл, пусть себе 15 минут работает макрос, а я дальше работаю с остальными фалами.

Ну и «со звездочкой» - пока мой второй файл трудиться, мне нужно еще один файл открыть. Если кликнуть на него в проводнике – кто его откроет – первый «свободный» Excel, или он пойдет в очередь к «занятому»?


Excel 365:
2. Работает
3. Работает
4. Макрос не работает
5. Способ не работает: "...программа заблокирована групповой политикой..."


Если кому-либо нужно сделать ярлык для запуска какого-то определенного файла в отдельном процессе, то можете сделать так:
"C:\Program Files\Microsoft Office\Office14\EXCEL.EXE" /x  "D:\файл.xlsx"
путь к программе и самому файлу замените на свои            


Как открыть новый Excel в отдельном окне

75 25.07.2019 Скачать пример

Приходилось ли вам когда-нибудь по несколько минут ждать пока в вашей книге Excel отработает макрос, обновится запрос Power Query или пересчитаются тяжелые формулы? Можно, конечно, заполнить случившуюся паузу чайком-кофейком на вполне законных основаниях, но наверняка вам приходила в голову и другая мысль: а не открыть ли рядом другую книгу Excel и не не поработать ли пока с ней?

Но всё не так просто.

Если вы открываете несколько файлов Excel обычным образом (двойным щелчком мыши в Проводнике или через меню Файл - Открыть в Excel), то они автоматически открываются в одном и том же экземпляре программы Microsoft Excel. Соответственно, если запустить пересчёт или макрос в одном из таких файлов, то занято будет всё приложение и зависнут все открытые книги, т.к. системный процесс Excel у них общий.

Решается эта проблема достаточно просто - нужно запустить Excel в новом отдельном процессе. Он будет независим от первого и позволит вам спокойно работать с другими файлами, пока предыдущий экземпляр Excel параллельно трудится над тяжелой задачей. Сделать это можно несколькими способами, причем некоторые из них могут работать или не работать в зависимости от вашей версии Excel и установленных обновлений. Так что пробуйте всё по очереди.

Способ 1. Лобовой

Самый простой и очевидный вариант - выбрать в главном меню Пуск - Программы - Excel (Start - Programs - Excel). К сожалению, работает такой примитивный подход только в старых версиях Excel.

Способ 2. Средняя кнопка мыши или Alt

  1. Щёлкните правой кнопкой мыши по иконке Excel на панели задач - откроется контекстное меню со списком последних файлов.
  2. В нижней части этого меню будет строка Excel - щёлкните по ней левой кнопкой мыши, удерживая при этом клавишу Alt.

Должен запуститься ещё один Excel в новом процессе. Также вместо щелчка левой кнопкой с Alt можно использовать среднюю кнопку мыши - если на вашей мышке она есть (или нажимное колесико выполняет её роль).

Способ 3. Командная строка

Выберите в главном меню Пуск - Выполнить (Start - Run) или нажмите сочетание клавиш Win+R. В появившемся поле введите команду:

excel.exe /x


После нажатия на ОК должен запуститься новый экземпляр Excel в отдельном процессе.

Способ 4. Макрос

Это вариант чуть сложнее, чем предыдущие, но работает в любой версии Excel по моим наблюдениям:

  1. Открываем редактор Visual Basic через вкладку Разработчик - Visual Basic (Developer - Visual Basic) или сочетанием клавиш Alt + F11. Если вкладки Разработчик не видно, то отобразить её можно через Файл - Параметры - Настройка ленты (File - Options - Customize Ribbon).
  2. В окне Visual Basic вставляем новый пустой модуль для кода через меню Insert - Module.
  3. Копируем туда следующий код:


Sub Run_New_Excel()

    Set NewExcel = CreateObject("Excel.Application")

    NewExcel.Workbooks.Add

    NewExcel.Visible = True

End Sub


Если запустить теперь созданный макрос через Разработчик - Макросы (Developer - Macro) или сочетанием клавиш Alt+F8, то будет создан отдельный экземпляр Excel, как мы и хотели.

Для удобства, приведенный выше код можно добавить не в текущую книгу, а в Личную Книгу Макросов и вынести для этой процедуры отдельную кнопку на панель быстрого доступа - тогда эта возможность будет у вас всегда под рукой.


Способ 5. Файл сценария VBScript

Этот способ похож на предыдущий, но использует VBScript - сильно упрощенный вариант языка Visual Basic для выполнения простых действий прямо в Windows. Чтобы его использовать делаем следующее:

Сначала включаем отображение расширений для файлов в Проводнике через Вид - Расширения файлов (View - File Extensions):

Затем создаем в любой папке или на рабочем столе текстовый файл (например NewExcel.txt) и копируем туда следующий код на VBScript:


Set NewExcel = CreateObject("Excel.Application")

NewExcel.Workbooks.Add

NewExcel.Visible = True

set NewExcel = Nothing


Сохраняем и закрываем файл, а затем меняем его расширение с txt на vbs. После переименования появится предупреждение, с которым надо согласиться, и у файла изменится иконка:

Всё. Теперь двойной щелчок левой кнопкой мыши по этому файлу будет запускать новый независимый экземпляр Excel, когда он вам потребуется.
P.S.

Помните о том, что кроме плюсов, запуск нескольких экземпляров Excel имеет и минусы, т.к. эти системные процессы друг друга "не видят". Например, вы не сможете сделать прямую ссылку между ячейками книг в разных Excel. Также будут сильно ограничены возможности копирования между различными экземплярами программы и т.д. В большинстве случаев, однако, это не такая уж большая плата за возможность не терять время в ожидании.

Ссылки по теме

Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования