Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/КАК ЗАПУСТИТЬ ФАЙЛ С ВКЛЮЧЕННЫМИ МАКРОСАМИ? - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вопросы по VB, VBS, VB.net » КАК ЗАПУСТИТЬ ФАЙЛ С ВКЛЮЧЕННЫМИ МАКРОСАМИ? (Макросы/Sub)
КАК ЗАПУСТИТЬ ФАЙЛ С ВКЛЮЧЕННЫМИ МАКРОСАМИ?
hripunkov Дата: Суббота, 08.08.2015, 15:28 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 40% ±

Excel 2007
Добрый день. Требуется запускать определенный файл Excel сразу с включенными макросами, игнорируя настройки безопасности. При этом на компьютере установлены сразу две версии Office 2003 и 2007. Для открытия указанного файла нужно использовать версию 2007, для выполнения вышеизложенных требований использую скрипт со следующим кодом:

[vba]
Код
launchshell   
     Sub launchshell()     
         Dim objXL     
         Dim Secur     
         Dim sFilePath     
         Dim sExcelPath     
         Dim WshShell
     Dim xlBook
          
         sExcelPath = "C:\Program Files (x86)\Microsoft Office\Office12\EXCEL.EXE"     
         sFilePath = replace(Wscript.ScriptFullName,Wscript.ScriptName,"Имя-Файла.xlsm")     
         Set WshShell = CreateObject("WScript.Shell")     
         WshShell.Run("""" & sExcelPath & """")   
         WScript.Sleep(1500)     
          
         Set xlBook = GetObject(sFilePath)   
         Set objXL = xlBook.Application   
         objXL.Visible = TRUE   
         secur = objXL.AutomationSecurity   
         objXL.AutomationSecurity = 1   
         xlBook.Close (False)   
         objXL.Workbooks.Open sFilePath,,,,"4321"   
         objXL.AutomationSecurity = secur
             
     End Sub
[/vba]

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

Прошу Вас подсказать/рассказать, что сделано не так, где, что и как нужно поменять, чтобы исправить ситуацию? Спасибо.
 
Ответить
СообщениеДобрый день. Требуется запускать определенный файл Excel сразу с включенными макросами, игнорируя настройки безопасности. При этом на компьютере установлены сразу две версии Office 2003 и 2007. Для открытия указанного файла нужно использовать версию 2007, для выполнения вышеизложенных требований использую скрипт со следующим кодом:

[vba]
Код
launchshell   
     Sub launchshell()     
         Dim objXL     
         Dim Secur     
         Dim sFilePath     
         Dim sExcelPath     
         Dim WshShell
     Dim xlBook
          
         sExcelPath = "C:\Program Files (x86)\Microsoft Office\Office12\EXCEL.EXE"     
         sFilePath = replace(Wscript.ScriptFullName,Wscript.ScriptName,"Имя-Файла.xlsm")     
         Set WshShell = CreateObject("WScript.Shell")     
         WshShell.Run("""" & sExcelPath & """")   
         WScript.Sleep(1500)     
          
         Set xlBook = GetObject(sFilePath)   
         Set objXL = xlBook.Application   
         objXL.Visible = TRUE   
         secur = objXL.AutomationSecurity   
         objXL.AutomationSecurity = 1   
         xlBook.Close (False)   
         objXL.Workbooks.Open sFilePath,,,,"4321"   
         objXL.AutomationSecurity = secur
             
     End Sub
[/vba]

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

Прошу Вас подсказать/рассказать, что сделано не так, где, что и как нужно поменять, чтобы исправить ситуацию? Спасибо.

Автор - hripunkov
Дата добавления - 08.08.2015 в 15:28
KSV Дата: Воскресенье, 09.08.2015, 02:13 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
Добрый день!
Отдельно запускать EXCEL.EXE не нужно (это и будет вашей лишней "пустой книгой").



Но, по-уму, лучше так (без лишних "телодвижений")


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333


Сообщение отредактировал KSV - Воскресенье, 09.08.2015, 11:35
 
Ответить
СообщениеДобрый день!
Отдельно запускать EXCEL.EXE не нужно (это и будет вашей лишней "пустой книгой").



Но, по-уму, лучше так (без лишних "телодвижений")

Автор - KSV
Дата добавления - 09.08.2015 в 02:13
hripunkov Дата: Воскресенье, 09.08.2015, 11:41 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 40% ±

Excel 2007
Не подходит такой вариант... У меня проблема с выбором версии Excel, в Вашем варианте у меня будет вызываться только Excel 2003 - почему так? А вот не знаю )) Но именно так, пока жестко не привяжешь скрипт к вызову 2007 ничего не получается....
 
Ответить
СообщениеНе подходит такой вариант... У меня проблема с выбором версии Excel, в Вашем варианте у меня будет вызываться только Excel 2003 - почему так? А вот не знаю )) Но именно так, пока жестко не привяжешь скрипт к вызову 2007 ничего не получается....

Автор - hripunkov
Дата добавления - 09.08.2015 в 11:41
RAN Дата: Воскресенье, 09.08.2015, 11:49 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеТри страницы

Автор - RAN
Дата добавления - 09.08.2015 в 11:49
Serge_007 Дата: Воскресенье, 09.08.2015, 12:12 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Excel 2003
не поддерживает формат


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Excel 2003
не поддерживает формат

Автор - Serge_007
Дата добавления - 09.08.2015 в 12:12
hripunkov Дата: Воскресенье, 09.08.2015, 12:13 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 40% ±

Excel 2007
RAN, Так и есть. А это запрещено? Там я не нашел решения вопроса, пришел сюда. Я хочу найти ответ, и так как сам решить проблему не могу создал вопрос на тематических форумах. Ведь именно так делают люди? ))


Сообщение отредактировал hripunkov - Воскресенье, 09.08.2015, 12:17
 
Ответить
СообщениеRAN, Так и есть. А это запрещено? Там я не нашел решения вопроса, пришел сюда. Я хочу найти ответ, и так как сам решить проблему не могу создал вопрос на тематических форумах. Ведь именно так делают люди? ))

Автор - hripunkov
Дата добавления - 09.08.2015 в 12:13
hripunkov Дата: Воскресенье, 09.08.2015, 12:17 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 40% ±

Excel 2007
Serge_007, это не так - https://support.microsoft.com/ru-ru/kb/924074
 
Ответить
СообщениеSerge_007, это не так - https://support.microsoft.com/ru-ru/kb/924074

Автор - hripunkov
Дата добавления - 09.08.2015 в 12:17
Serge_007 Дата: Воскресенье, 09.08.2015, 12:23 | Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
это не так
Да неужели?
Вы сами-то статью читали? Что бы Excel 2003 открыл файл четырехбуквенного формата НЕОБХОДИМО УСТАНОВИТЬ КОНВЕРТЕР
Дайте ссылку на пост, в котором Вы указали что у Вас установлен SP3


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
это не так
Да неужели?
Вы сами-то статью читали? Что бы Excel 2003 открыл файл четырехбуквенного формата НЕОБХОДИМО УСТАНОВИТЬ КОНВЕРТЕР
Дайте ссылку на пост, в котором Вы указали что у Вас установлен SP3

Автор - Serge_007
Дата добавления - 09.08.2015 в 12:23
Hugo Дата: Воскресенье, 09.08.2015, 13:00 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3252
Репутация: 707 ±
Замечаний: 0% ±

2019
И этот конвертер поддерживает 4буквы лишь частично - кнопки обычно не работают, миллионов строк/столбцов естественно не будет.
А по поводу темы: когда по три страницы минимум на трёх форумах - не мудрено запутаться в ответах.
И не понятно что именно нужно сделать - если нужно открыть определённый файл в определённом экселе, и чтоб в файле работали макросы - это одна задача.
Если нужно открыть определённый файл в определённом экселе, и чтоб в этом экселе работали макросы - это задача другая.
Похоже что интересует первый вариант - а для этого не нужно отключать эту секурити, и об этом уже говорилось пару раз на разных форумах в этой теме. Достаточно просто открыть файл скриптом.


excel@nxt.ru
webmoney: E265281470651 Z422237915069


Сообщение отредактировал Hugo - Воскресенье, 09.08.2015, 13:21
 
Ответить
СообщениеИ этот конвертер поддерживает 4буквы лишь частично - кнопки обычно не работают, миллионов строк/столбцов естественно не будет.
А по поводу темы: когда по три страницы минимум на трёх форумах - не мудрено запутаться в ответах.
И не понятно что именно нужно сделать - если нужно открыть определённый файл в определённом экселе, и чтоб в файле работали макросы - это одна задача.
Если нужно открыть определённый файл в определённом экселе, и чтоб в этом экселе работали макросы - это задача другая.
Похоже что интересует первый вариант - а для этого не нужно отключать эту секурити, и об этом уже говорилось пару раз на разных форумах в этой теме. Достаточно просто открыть файл скриптом.

Автор - Hugo
Дата добавления - 09.08.2015 в 13:00
KSV Дата: Воскресенье, 09.08.2015, 13:14 | Сообщение № 10
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
Не дочитал до этого :)
Для открытия указанного файла нужно использовать версию 2007


Тогда, попробуйте так:


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
СообщениеНе дочитал до этого :)
Для открытия указанного файла нужно использовать версию 2007


Тогда, попробуйте так:

Автор - KSV
Дата добавления - 09.08.2015 в 13:14
hripunkov Дата: Воскресенье, 09.08.2015, 15:42 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 40% ±

Excel 2007
Дайте ссылку на пост, в котором Вы указали что у Вас установлен SP3
Serge_007, однако не говорил я и обратного!

Вы сами-то статью читали?
и да, читал.

Set objXL = CreateObject("Excel.Application.12")   ' получаем указатель на Application v12.0 (Excel 2007)
не знаю почему, но в моем случае это не помогает и все равно открывается 2003. к слову сказать, что в нормальном режиме (т.е. запуск без скрипта) файлы типа .xlsm запускают именно 2007 версию... вот такое странное поведение


Сообщение отредактировал hripunkov - Воскресенье, 09.08.2015, 15:43
 
Ответить
Сообщение
Дайте ссылку на пост, в котором Вы указали что у Вас установлен SP3
Serge_007, однако не говорил я и обратного!

Вы сами-то статью читали?
и да, читал.

Set objXL = CreateObject("Excel.Application.12")   ' получаем указатель на Application v12.0 (Excel 2007)
не знаю почему, но в моем случае это не помогает и все равно открывается 2003. к слову сказать, что в нормальном режиме (т.е. запуск без скрипта) файлы типа .xlsm запускают именно 2007 версию... вот такое странное поведение

Автор - hripunkov
Дата добавления - 09.08.2015 в 15:42
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вопросы по VB, VBS, VB.net » КАК ЗАПУСТИТЬ ФАЙЛ С ВКЛЮЧЕННЫМИ МАКРОСАМИ? (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!