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

Вход

Регистрация

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

 

= Мир MS Excel/Выполнение макроса из другого документа - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Мир MS Excel » Вопросы и решения » Excel и другие приложения » Word » Выполнение макроса из другого документа
Выполнение макроса из другого документа
matushkint Дата: Среда, 20.12.2023, 18:05 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Добрый день!
Столкнулся с такой проблемой:
У меня есть файл с макросами "Макросы.docm". Открыт в Word
Есть файл "Test.docx" - тоже открыт в Word. Хочу применить макрос Format из файла "Макросы.docm" в Test.docx
В окне выбора макросов нет возможности выбрать файл "Макросы.docm".

Как запускать макросы из другого файла?
К сообщению приложен файл: 9829808.jpg (29.0 Kb)
 
Ответить
СообщениеДобрый день!
Столкнулся с такой проблемой:
У меня есть файл с макросами "Макросы.docm". Открыт в Word
Есть файл "Test.docx" - тоже открыт в Word. Хочу применить макрос Format из файла "Макросы.docm" в Test.docx
В окне выбора макросов нет возможности выбрать файл "Макросы.docm".

Как запускать макросы из другого файла?

Автор - matushkint
Дата добавления - 20.12.2023 в 18:05
Gustav Дата: Среда, 20.12.2023, 21:34 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2748
Репутация: 1138 ±
Замечаний: 0% ±

начинал с Excel 4.0, видел 2.1
Попробуйте такой командой в Окне отладки редактора VBA подключить свой файл с макросами как надстройку:
[vba]
Код
Application.AddIns.Add "C:\Папка\Подпапка\Макросы.docm"
[/vba]
Вручную (через пользовательский интерфейс Word) эту операцию можно выполнить, пройдя по меню (версия 2013): вкладка "Разработчик" \ Надстройки \ кнопка "Добавить".

Вызывать процедуры и функции загруженной надстройки в коде VBA текущего документа (например, в его Окне отладки) можно с помощью таких конструкций:
[vba]
Код
Application.Run "ИмяПроцедуры", "Аргумент1", ...
[/vba]или
[vba]
Код
Application.Run "ИмяМодуля.ИмяПроцедуры", "Аргумент1", ...
[/vba]

Операторы, оформленные в соответствии с официальными рекомендациями от Micfosoft, типа таких:
[vba]
Код
Application.Run "ИмяПроекта.ИмяМодуля.ИмяПроцедуры"
[/vba]или
[vba]
Код
Application.Run "'ИмяФайла.docm'!ИмяМодуля.ИмяПроцедуры"
[/vba]
у меня, к сожалению, не заработали. И в чём дело - увы, совершенно непонятно. Отсюда лайфхак - в подобных случаях делать имена библиотечного модуля и процедур/функций в нём как можно более уникальными, чтобы исключить дублирование названий в больших проектах.


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал Gustav - Четверг, 21.12.2023, 16:26
 
Ответить
СообщениеПопробуйте такой командой в Окне отладки редактора VBA подключить свой файл с макросами как надстройку:
[vba]
Код
Application.AddIns.Add "C:\Папка\Подпапка\Макросы.docm"
[/vba]
Вручную (через пользовательский интерфейс Word) эту операцию можно выполнить, пройдя по меню (версия 2013): вкладка "Разработчик" \ Надстройки \ кнопка "Добавить".

Вызывать процедуры и функции загруженной надстройки в коде VBA текущего документа (например, в его Окне отладки) можно с помощью таких конструкций:
[vba]
Код
Application.Run "ИмяПроцедуры", "Аргумент1", ...
[/vba]или
[vba]
Код
Application.Run "ИмяМодуля.ИмяПроцедуры", "Аргумент1", ...
[/vba]

Операторы, оформленные в соответствии с официальными рекомендациями от Micfosoft, типа таких:
[vba]
Код
Application.Run "ИмяПроекта.ИмяМодуля.ИмяПроцедуры"
[/vba]или
[vba]
Код
Application.Run "'ИмяФайла.docm'!ИмяМодуля.ИмяПроцедуры"
[/vba]
у меня, к сожалению, не заработали. И в чём дело - увы, совершенно непонятно. Отсюда лайфхак - в подобных случаях делать имена библиотечного модуля и процедур/функций в нём как можно более уникальными, чтобы исключить дублирование названий в больших проектах.

Автор - Gustav
Дата добавления - 20.12.2023 в 21:34
matushkint Дата: Четверг, 21.12.2023, 17:46 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Спасибо! Добавление в надстройки помогло.
 
Ответить
СообщениеСпасибо! Добавление в надстройки помогло.

Автор - matushkint
Дата добавления - 21.12.2023 в 17:46
Мир MS Excel » Вопросы и решения » Excel и другие приложения » Word » Выполнение макроса из другого документа
  • Страница 1 из 1
  • 1
Поиск:

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