запуск формы при открытии excel
Заставка при открытии книги Excel
Этот прием позволит Вам выводить на экран окно-заставку при открытии любой заданной книги в Excel.
Заставка появляется сразу после открытия файла и автоматически исчезает через несколько секунд.
Шаг 1. Создаем экранную форму
Возможно, придется немного изменить размер формы, чтобы изображение уместилось полностью. Чтобы написать на форме текст, можно использовать элемент управления Label с панели Toolbox.
Ну, и наконец, выделив предварительно всю форму, можно задать текст в строке заголовка, используя свойство Caption в панели Properties:
В итоге у вас должно получиться нечто подобное:
Шаг 2. Добавляем управляющий код
Щелкните правой кнопкой мыши по форме и выберите View Code. В открывшийся модуль формы добавьте такой код:
Все. Можно закрывать редактор Visual Basic, сохранять файл и пробовать закрыть-открыть книгу.
Как это работает?
При открытии книги Excel выполняет процедуру Workbook_Open из модуля ЭтаКнига. Эта процедура отображает на экране нашу форму-заставку. При отображении формы запускается процедура UserForm_Activate, которая с задержкой в 5 секунд запускает макрос KillTheForm, который убирает форму с экрана.
Ссылки по теме
Привет! Отличный макрос, только если отчет с этим макросом открывать из письма Outlook высвечивается следующая ошибка: Run-time error ‘1004’: Metod ‘Ontime’ of object ‘_Application’ faild.
При попытке отладить подсвечивается последняя строчка End Sub в модуле KillTheForm.
Добрый день, не могли бы вы подсказать, почему при добавлении такой заставки мог поломаться автобэкап, созданный полностью по уроку:
Создание резервных копий ценных файлов Поломался он так, что не выдает никаких ошибок, просто не появляется файл в папке сохранения.
Наверно это что-то связанное с созданием Userform, и конфликтом в исполнении модуля с бекапом и формы. Сначала я переименовал форму, естественно, поменяв все необходимые ссылки на неё в текущей книге и модуле2. Обнаружил проблему с бэкапом. Подумал, решил, может быть, макросы выполняются при запуске в иерархичном порядке, переименовал userform так, чтобы в списке модулей он отображался позже модуля бэкапа. Не помогло. Возникла следующая идея. Удалил модуль2, относящийся к картинке, макрос оттуда добавил в модуль1(бэкап). Тоже не помогло. Картинка как работала, так и работает, но бэкап не сохраняется. Новых идей у меня, к сожалению, пока не возникло. Походу придется удалять заставку, так как функция бэкапа, объективно, важнее всяких картиночек.
Николай, обращаюсь к вам за советом, может быть вы знаете, в чем проблема, и надеюсь, что вы увидите и ответите. Заранее спасибо.
p.s. Я тыкаюсь в vba как слепой котенок, но чаще всего это приносит свои плоды.
Добрый день, а защитил макрос, во время закрывание книг, спрашивает VBA пороль.
Подскажите, пожалуйста, в чем моя ошибка?
И еще, в модулье ЭтаКнига у меня ранше был вот токой запис.
Автоматический запуск макроса при открытии книги
Прежде чем начать, убедитесь, что на ленте доступна вкладка Разработчик. Дополнительные сведения см. в статье Отображение вкладки «Разработчик».
Чтобы использовать пример ниже, откройте новую книгу.
Важно: Код VBA нельзя отменить, поэтому проверьте код в пустой книге или копии существующей книги. Если код не работает, вы можете закрыть книгу без сохранения изменений.
Откройте вкладку Разработчик и щелкните элемент Visual Basic.
В обозревателе VBA Project слева разверните папку VBA Project книги, а затем дважды щелкните модуль ThisWorkbook. Если вы не видите обозреватель Project, перейдите в > Project проводникаили нажмите CTRL+R.
В окне модуля, которое открывается справа, вставьте следующий код:
В конце и подмножите записи в процедуру Sub.
Закройте редактор Visual Basic (вам не нужно ничего сохранять).
Сохраните книгу как книгу Excel Macro-Enabled (XLSM)и закроем ее.
При следующем запуске книги код, добавленный в Workbook_Open, будет работать автоматически.
Прежде чем начать, убедитесь, что на ленте доступна вкладка Разработчик. Для этого:
В меню выберите пункт Параметры Excel >. > ленты & панели инструментов.
В категории Настройка ленты в списке Основные вкладки выберите вариант Разработчик.
Нажмите кнопку Сохранить.
Чтобы использовать пример ниже, откройте новую книгу.
Важно: Код VBA нельзя отменить, поэтому проверьте код в пустой книге или копии существующей книги. Если код не работает, вы можете закрыть книгу без сохранения изменений.
Откройте вкладку Разработчик и щелкните элемент Visual Basic.
В обозревателе VBA Project слева разверните папку VBA Project книги, а затем дважды щелкните модуль ThisWorkbook.
В окне модуля, которое открывается справа, вставьте следующий код:
В конце и подмножите записи в процедуру Sub.
Закройте редактор Visual Basic (вам не нужно ничего сохранять).
Сохраните книгу как книгу Excel Macro-Enabled (XLSM)и закроем ее.
При следующем запуске книги код, добавленный в Workbook_Open, будет работать автоматически.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
VBA Excel. Первая форма (для начинающих)
Пример создания пользовательской формы в редакторе VBA Excel для начинающих программировать с нуля. Добавление на форму текстового поля и кнопки.
Начинаем программировать с нуля
Часть 4. Первая форма
[Часть 1] [Часть 2] [Часть 3] [Часть 4]
Создание пользовательской формы
Перейдите в редактор VBA, нажав сочетание клавиш «Левая_клавиша_Alt+F11».
В открывшемся окне редактора VBA выберите вкладку «Insert» главного меню и нажмите кнопку «UserForm». То же подменю откроется при нажатии на вторую кнопку (после значка Excel) на панели инструментов.
На экране редактора VBA появится новая пользовательская форма с именем «UserForm1»:
Добавление элементов управления
Обычно вместе с пользовательской формой открывается панель инструментов «Toolbox», как на изображении выше, с набором элементов управления формы. Если панель инструментов «Toolbox» не отобразилась, ее можно вызвать, нажав кнопку «Toolbox» во вкладке «View»:
При наведении курсора на элементы управления появляются подсказки.
Найдите на панели инструментов «Toolbox» элемент управления с подсказкой «TextBox», кликните по нему и, затем, кликните в любом месте рабочего поля формы. Элемент управления «TextBox» (текстовое поле) будет добавлен на форму.
Найдите на панели инструментов «Toolbox» элемент управления с подсказкой «CommandButton», кликните по нему и, затем, кликните в любом месте рабочего поля формы. Элемент управления «CommandButton» (кнопка) будет добавлен на форму.
Кликнув по элементу управления на форме, вы можете изменять его размер, перетягивая границы за белые квадратики, и перетаскивать по форме, ухватив за одну из границ. Кликнув по заголовку формы или по ее рабочему полю, вы можете также изменять ее размер, перетягивая границы за белые квадратики.
Нажатием клавиши «F4» вызывается окно свойств, с помощью которого можно вручную задавать значения свойств пользовательской формы и элементов управления. В окне свойств отображаются свойства выбранного элемента управления или формы, если выбрана она. Также окно свойств можно вызвать, нажав кнопку «Properties Window» во вкладке «View».
Отображение формы на экране
Чтобы запустить пользовательскую форму для просмотра из редактора VBA, необходимо выбрать ее, кликнув по заголовку или свободному от элементов управления полю, и совершить одно из трех действий:
Для запуска пользовательской формы с рабочего листа Excel, можно использовать кнопки, описанные в этой статье. Например, чтобы отобразить форму с помощью «кнопки – элемента ActiveX», используйте в модуле рабочего листа следующий код:
Автоматический запуск формы при открытии книги
Автоматический запуск макроса при открытии книги?
Есть книга Книга1.xls и есть форма Form1? встроенная в эту книгу. Как сделать так, чтобы при.
Автоматический запуск макроса при открытии любой книги, которая соответствует конкретным условиям
Добрый день, уважаемые форумчане! Нужна ваша помощь:) Ситуация следующая. Мне на почту каждый.
Автоматический запуск формы при открытии документа
Народ помогите плиз, надо что бы при открытии заданного документа Word например 1.doc поверх текста.
Решение
В событие Workbook_Open() внесите следующие изменения:
спасибо)
а можно ещё один вопрос
,как записать в базу стало понятно,а вот как ещё отчистить.
Авто запуск макроса из личной книги при открытии файла с определенным именем
Привет, друзья! у меня есть много макросов в личной книге, как сделать что-бы при запуске файла.
Запуск определенной формы при открытии определенного листа
Здравствуйте помогите мне с такой задачей, Есть у меня «Лист1», «Лист2», «Лист3», «Лист4», нужно.
Автоматический запуск формы
Как сделать чтобы форма автоматически открывалась. Чтобы в ней можно было вводить поля и после.
Автоматический запуск музыки при открытии проекта.
подскажите как сделать. нужно нажать на форме кнопки и должна заиграть музыка. или при.
Автоматический запуск и закрытие формы.
Как сделать в VB чтобы при запуске проекта сначала открывалась форма заставка которая.
Выполнение кода при открытии формы
Подскажите пожалуйста, как выполнить код при открытии формы в excel.
— Форма открывается по кнопке(UserForm1.show).
— Это необходимо, для обновлений значений в форме.
p.s.: гугл упорно говорит выполнить код при открытии книги, но мне нужно именно при открытии формы. Спасибо.
(excel_2010_VBA) Выполнение макроса при открытии конкретного файла
Здравствуйте, суть проблемы в следующем: с помощью excel, из последних документов я открываю файл с.
Ошибка при открытии формы
Добрый день! Помогите,пожалуйста.найти ошибку,выходит на строчку:Form1.Show Сначала пишет,что.
Выполнение процедуры при открытии листа в EXCEL
Доброе время суток! Кто подскажет как программно выполнить необходимую функцию (процедуру) при.
Решение
Формы. При повторном открытии формы сбрасываются результаты вывода данных
Создал 2 формы. В 1й форме проходит расчет различных выражений. Данные расчета присваиваются.
Выполнение кода до загрузки начальной формы
Доброго времени суток! В программе есть несколько форм, необходимо перед запуском проверить не.
Блокировка на изменение формы при открытии второй формы
Привет всем Есть две формы. Вторая форма вызывается с помощью кнопки размещенной на первой форме.
Очистка checkedlistbox при скрытии формы и открытии формы
Здравствуйте! Подскажите, мне нужно чтоб при скрытии формы checkedlistbox очищался, а при открытии.