Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/56: Рейтинг темы: голосов - 56, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 24.11.2012
Сообщений: 16
1

Автоматический запуск макроса при открытии любой книги, которая соответствует конкретным условиям

26.11.2012, 13:46. Показов 10087. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, уважаемые форумчане! Нужна ваша помощь
Ситуация следующая.
Мне на почту каждый день приходит екселевский файл, который необходимо обработать. Название файла имеет формат "treasury outstandings" + дата (например "treasury outstandings 23 Nov" или "treasury outstandings 24 Nov"
Возможно ли сделать так, чтобы макрос автоматически запускался при открытии любой книги, название которой содержит "treasury outstandings"?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2012, 13:46
Ответы с готовыми решениями:

Автоматический запуск макроса при открытии книги?
Есть книга Книга1.xls и есть форма Form1? встроенная в эту книгу. Как сделать так, чтобы при...

Автоматический запуск формы при открытии книги
здравствуйте мне нужно создать программу Auto_Open которая при открытии книги Excel автоматически...

Запуск макроса при закрытии любой активной рабочей книги
Есть макрос, в книге макросов, но как его запустить при закрытии любой активной рабочей книги?...

Авто запуск макроса из личной книги при открытии файла с определенным именем
Привет, друзья! у меня есть много макросов в личной книге, как сделать что-бы при запуске файла...

5
2785 / 717 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
26.11.2012, 13:56 2
Лучший ответ Сообщение было отмечено как решение

Решение

Создайте новую книгу, вставьте код, приведенный ниже, в модуль книи и сохраните книгу как .xla / .xlam (зависит от версии Office):
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Option Explicit
 
Dim WithEvents xlApp As Excel.Application
 
Private Sub xlApp_WorkbookOpen(ByVal Wb As Workbook)
    If Wb.Name Like "treasury outstandings*.xls*" Then
        Call MyMacro(Wb)
    End If
End Sub
 
Private Sub MyMacro(wbk As Workbook)
    MsgBox wbk.Name
End Sub
Полученную надстройку положить в каталок с надстройками и включите надстройку
3
0 / 0 / 0
Регистрация: 24.11.2012
Сообщений: 16
27.11.2012, 12:06  [ТС] 3
Спасибо!
Работает.

Правда добавил после
Visual Basic
1
Dim WithEvents App As Application
Visual Basic
1
2
3
      Private Sub Workbook_Open()
       Set App = Application
       End Sub
Но не суть, раньше не работал с надстройками. Клевая вещь Спасибо еще раз)
0
2785 / 717 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
27.11.2012, 13:21 4
Всё верно. Один из плюсов - макрос в надстроке выполнится всегда, даже когда отключишь макросы в Excel.
0
0 / 0 / 0
Регистрация: 18.05.2016
Сообщений: 118
23.06.2016, 11:37 5
У меня ситуация такая же, только мне надо открывать файл с любым именем, когда я вставил ваш код в Vba, то у меня красным выделила строку dim xl_app.... Как мне решить эту проблему?
0
18 / 13 / 1
Регистрация: 04.07.2012
Сообщений: 523
29.11.2016, 18:51 6
сделал файл надстройки .xla, подключил его, всё он нормально подключается и в книге написал код:
Visual Basic
1
2
3
4
5
6
7
Private Sub Workbook_Open()
    MsgBox "Привет!"
 
    Cells.Select                 '
    Selection.ColumnWidth = 10   'макрос
    Selection.RowHeight = 15     '
End Sub
подтверждаю сообщение ОК, а дальше ошибка, ругается на "method cells of object _global failed"
. для примера мне надо изменить размеры ячеек листа. как правильно составить макрос?
0
29.11.2016, 18:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.11.2016, 18:51
Помогаю со студенческими работами здесь

Автоматический запуск макроса при старте Word-а
Может ли макрос запускаться автоматически, при открытии документа. И еще, никто не знает, где можно...

Автоматический запуск формы при открытии документа
Народ помогите плиз, надо что бы при открытии заданного документа Word например 1.doc поверх текста...

Запуск макроса при открытии документа
Добрый день! В VBA еще новичок, поэтому буду говорить, как мне подсказали, если что исправьте. ...

Автоматический запуск userform при открытии файла в шаблоне
Всем привет :) Может кто подскажет в чем проблема. Вставляю в ThisDocument / в модуль шаблона ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru