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

Вход

Регистрация

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

 

= Мир MS Excel/Порядок выполнения макросов - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Порядок выполнения макросов (Макросы/Sub)
Порядок выполнения макросов
emkub Дата: Суббота, 18.11.2017, 16:53 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 116
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Здравствуйте, друзья!
Помогите пожалуйста советом.

Есть такая конструкция. Открыты два файла. Выполняется список макросов:
Application.Run "Макрос1"
Application.Run "Макрос2"
Application.Run "Макрос3"
- на этом месте нужно открыть файл эксель, у которого автоматически при открытии отрабатывает макрос. Дождаться завершения и далее продолжить выполнять макросы ниже.
Application.Run "Макрос4"
Application.Run "Макрос5"

Подскажите пожалуйста, как это реализовать?
Заранее благодарю откликнувшихся.


Сообщение отредактировал emkub - Суббота, 18.11.2017, 16:55
 
Ответить
СообщениеЗдравствуйте, друзья!
Помогите пожалуйста советом.

Есть такая конструкция. Открыты два файла. Выполняется список макросов:
Application.Run "Макрос1"
Application.Run "Макрос2"
Application.Run "Макрос3"
- на этом месте нужно открыть файл эксель, у которого автоматически при открытии отрабатывает макрос. Дождаться завершения и далее продолжить выполнять макросы ниже.
Application.Run "Макрос4"
Application.Run "Макрос5"

Подскажите пожалуйста, как это реализовать?
Заранее благодарю откликнувшихся.

Автор - emkub
Дата добавления - 18.11.2017 в 16:53
InExSu Дата: Суббота, 18.11.2017, 23:56 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 260
Репутация: 29 ±
Замечаний: 80% ±

Excel 2010
Здравствуйте, друзья!
[vba]
Код
Sub Между3иЧ()
    Kill "x:\Признак.xls"
    Workbooks.Open "x:\Книга_с_Workbook_Open.xlsm"
    For S = 1 To 123    'по самочувствию
        Application.Wait (Now + TimeValue("0:00:01"))
        If Dir("x:\Признак.xls") <> "" Then Exit For
    Next
End Sub
'в книгу "x:\Книга_с_Workbook_Open.xlsm" в ЭтаКнига
Private Sub Workbook_Open()
    Workbooks.Add
    ActiveWorkbook.SaveAs "x:Признак.xls"
End Sub
[/vba]
 
Ответить
СообщениеЗдравствуйте, друзья!
[vba]
Код
Sub Между3иЧ()
    Kill "x:\Признак.xls"
    Workbooks.Open "x:\Книга_с_Workbook_Open.xlsm"
    For S = 1 To 123    'по самочувствию
        Application.Wait (Now + TimeValue("0:00:01"))
        If Dir("x:\Признак.xls") <> "" Then Exit For
    Next
End Sub
'в книгу "x:\Книга_с_Workbook_Open.xlsm" в ЭтаКнига
Private Sub Workbook_Open()
    Workbooks.Add
    ActiveWorkbook.SaveAs "x:Признак.xls"
End Sub
[/vba]

Автор - InExSu
Дата добавления - 18.11.2017 в 23:56
emkub Дата: Воскресенье, 19.11.2017, 14:43 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 116
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Спасибо за вариант!
если не найду более простого способа, возьму этот.
 
Ответить
СообщениеСпасибо за вариант!
если не найду более простого способа, возьму этот.

Автор - emkub
Дата добавления - 19.11.2017 в 14:43
emkub Дата: Воскресенье, 26.11.2017, 01:37 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 116
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
InExSu, вот тот самый вариант "попроще" :)

[vba]
Код
Workbooks.Open FileName:="Путь\Имя.xlsm"
Application.Wait Time:=Now + TimeValue("0:00:10") ' это добавил на всякий случай
Application.Run "Имя.xlsm!Макрос1"
[/vba]
Способ опробован на 2013 офисе. Работает.


Сообщение отредактировал emkub - Воскресенье, 26.11.2017, 20:11
 
Ответить
СообщениеInExSu, вот тот самый вариант "попроще" :)

[vba]
Код
Workbooks.Open FileName:="Путь\Имя.xlsm"
Application.Wait Time:=Now + TimeValue("0:00:10") ' это добавил на всякий случай
Application.Run "Имя.xlsm!Макрос1"
[/vba]
Способ опробован на 2013 офисе. Работает.

Автор - emkub
Дата добавления - 26.11.2017 в 01:37
Pelena Дата: Воскресенье, 26.11.2017, 07:15 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11842
Репутация: 2609 ±
Замечаний: 0% ±

Excel 2010, 2016 & Mac Excel
emkub, оформите код тегами с помощью кнопки # в режиме правки поста


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
Сообщениеemkub, оформите код тегами с помощью кнопки # в режиме правки поста

Автор - Pelena
Дата добавления - 26.11.2017 в 07:15
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Порядок выполнения макросов (Макросы/Sub)
Страница 1 из 11
Поиск:

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