Этот прием позволит Вам выводить на экран окно-заставку при открытии любой заданной книги в Excel.
Заставка появляется сразу после открытия файла и автоматически исчезает через несколько секунд.
Шаг 1. Создаем экранную форму
Откройте редактор Visual Basic — в старых версиях Excel это можно сделать через меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor), а в новых кнопкой Visual Basic на вкладке Разработчик (Developer) и создайте новую форму, используя команду меню Insert — UserForm. Появится пустая серая оконная форма будущей заставки. Добавим на нее изображение при помощи панели инструментов Toolbox (если у вас ее не видно, то зайдите в меню View — Toolbox):
Нажмите кнопку Image и растяните на форме прямоугольник — в него будет помещено фоновое изображение. Затем на панели инструментов Properties (если у вас ее не видно, то выберите в меню View — Properties) задайте выберите файл картинки в поле Picture:
Возможно, придется немного изменить размер формы, чтобы изображение уместилось полностью. Чтобы написать на форме текст, можно использовать элемент управления Label с панели Toolbox.
Ну, и наконец, выделив предварительно всю форму, можно задать текст в строке заголовка, используя свойство Caption в панели Properties:
В итоге у вас должно получиться нечто подобное:
Шаг 2. Добавляем управляющий код
Щелкните правой кнопкой мыши по форме и выберите View Code. В открывшийся модуль формы добавьте такой код:
Private Sub UserForm_Activate() Application.OnTime Now + TimeValue("00:00:05"), "KillTheForm" End Sub
Откройте модуль ЭтаКнига в левом верхнем углу (если ее не видно — отобразите соответствующее окно через меню View — Project Explorer) и добавьте в него следующий код:
Private Sub Workbook_Open() UserForm1.Show End Sub
И, наконец, вставьте обычный модуль (Insert — Module) и скопируйте туда это:
Private Sub KillTheForm() Unload UserForm1 End Sub
Все. Можно закрывать редактор Visual Basic, сохранять файл и пробовать закрыть-открыть книгу…
Как это работает?
При открытии книги Excel выполняет процедуру Workbook_Open из модуля ЭтаКнига. Эта процедура отображает на экране нашу форму-заставку. При отображении формы запускается процедура UserForm_Activate, которая с задержкой в 5 секунд запускает макрос KillTheForm, который убирает форму с экрана.
Ссылки по теме
- Что такое макросы, как с ними работать, куда вставлять код на Visual Basic
Содержание
- 1 Шаг 1. Создаем экранную форму
- 2 Шаг 2. Добавляем управляющий код
- 3 Как это работает?
- 4 Ссылки по теме
- 5 Создание меню
- 6 Выбор диапазона в пользовательской форме
- 7 Создание заставки
- 8 Отключение кнопки закрытия пользовательского диалогового окна
- 9 Изменение размера диалогового окна
- 10 Масштабирование и прокрутка листа в пользовательском диалоговом окне
- 11 Применение элемента управления MultiPage
- 12 Использование внешних элементов управления
- 13 Анимация элемента управления Label
Этот прием позволит Вам выводить на экран окно-заставку при открытии любой заданной книги в Excel.
Заставка появляется сразу после открытия файла и автоматически исчезает через несколько секунд.
Шаг 1. Создаем экранную форму
Откройте редактор Visual Basic — в старых версиях Excel это можно сделать через меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor), а в новых кнопкой Visual Basic на вкладке Разработчик (Developer) и создайте новую форму, используя команду меню Insert — UserForm. Появится пустая серая оконная форма будущей заставки. Добавим на нее изображение при помощи панели инструментов Toolbox (если у вас ее не видно, то зайдите в меню View — Toolbox):
Нажмите кнопку Image и растяните на форме прямоугольник — в него будет помещено фоновое изображение. Затем на панели инструментов Properties (если у вас ее не видно, то выберите в меню View — Properties) задайте выберите файл картинки в поле Picture:
Возможно, придется немного изменить размер формы, чтобы изображение уместилось полностью. Чтобы написать на форме текст, можно использовать элемент управления Label с панели Toolbox.
Ну, и наконец, выделив предварительно всю форму, можно задать текст в строке заголовка, используя свойство Caption в панели Properties:
В итоге у вас должно получиться нечто подобное:
Шаг 2. Добавляем управляющий код
Щелкните правой кнопкой мыши по форме и выберите View Code. В открывшийся модуль формы добавьте такой код:
Private Sub UserForm_Activate() Application.OnTime Now + TimeValue("00:00:05"), "KillTheForm" End Sub
Откройте модуль ЭтаКнига в левом верхнем углу (если ее не видно — отобразите соответствующее окно через меню View — Project Explorer) и добавьте в него следующий код:
Private Sub Workbook_Open() UserForm1.Show End Sub
И, наконец, вставьте обычный модуль (Insert — Module) и скопируйте туда это:
Private Sub KillTheForm() Unload UserForm1 End Sub
Все. Можно закрывать редактор Visual Basic, сохранять файл и пробовать закрыть-открыть книгу…
Как это работает?
При открытии книги Excel выполняет процедуру Workbook_Open из модуля ЭтаКнига. Эта процедура отображает на экране нашу форму-заставку. При отображении формы запускается процедура UserForm_Activate, которая с задержкой в 5 секунд запускает макрос KillTheForm, который убирает форму с экрана.
Ссылки по теме
- Что такое макросы, как с ними работать, куда вставлять код на Visual Basic
2.6K
12 марта 2004 года
Lev_ru
35 / / 05.03.2004
Поскажите, пожалуйста, как сделать, чтобы при открытии книги, появлялся рисунок секунды на 3? То есть в принципе для начала делаем форму, вставляем рисунок, а как сделать, чтобы через три секунды она исчезла? Не могу разобраться со счетчиком…
12 марта 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by Lev_ru
Поскажите, пожалуйста, как сделать, чтобы при открытии книги, появлялся рисунок секунды на 3? То есть в принципе для начала делаем форму, вставляем рисунок, а как сделать, чтобы через три секунды она исчезла? Не могу разобраться со счетчиком…
Открываем форму в режиме vbModeless и запускаем таймер. В процедуре обработки сообщений от таймера обнуляем сам таймер и закрываем форму. Вроде все… В каком именно моменте проблемы?
2.6K
13 марта 2004 года
Lev_ru
35 / / 05.03.2004
Цитата:
Originally posted by SergeySV
Открываем форму в режиме vbModeless и запускаем таймер. В процедуре обработки сообщений от таймера обнуляем сам таймер и закрываем форму. Вроде все… В каком именно моменте проблемы?
Что такое режим vbModeless я так и непонял, даже в стравке не нашел. А на счет счетчика, может просто командой delay сделать?
13 марта 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by Lev_ru
Что такое режим vbModeless я так и непонял, даже в стравке не нашел. А на счет счетчика, может просто командой delay сделать?
Да все очень просто, когда ты показываешь свою форму
MyForm.Show
то раньше. в Office97 форма всегда открывалась в режимк modal, то есть фокус становился на форму, никуда перейти не закрыв форму нельзя было и главное — выполнение кода останавливалось на этой строчке, т.е.
MyForm.Show
a=3
пока форма закрыта не будет, макрос не перейдет на строчку a=3
Это удобно для организации диалогов, но абсолютно неприемливо, если хочешь сделать что-то типа твоей задачи, когда нужно показать форму и продолжить выполнение программы дальше и позволять пользователь лазить по всему Excel’ю. Для этого с office2000 добавили в метод Show параметры: vbModal(описано выше) и новый параметр — vbModeless. Последний параметр как раз и дает указание Excel’ю открыть форму и продолжить выполнение макроса дальше, а не застывать на месте.
2.6K
14 марта 2004 года
Lev_ru
35 / / 05.03.2004
Цитата:
Originally posted by SergeySV
Да все очень просто, когда ты показываешь свою форму
MyForm.Show
то раньше. в Office97 форма всегда открывалась в режимк modal, то есть фокус становился на форму, никуда перейти не закрыв форму нельзя было и главное — выполнение кода останавливалось на этой строчке, т.е.
MyForm.Show
a=3
пока форма закрыта не будет, макрос не перейдет на строчку a=3 Это удобно для организации диалогов, но абсолютно неприемливо, если хочешь сделать что-то типа твоей задачи, когда нужно показать форму и продолжить выполнение программы дальше и позволять пользователь лазить по всему Excel’ю. Для этого с office2000 добавили в метод Show параметры: vbModal(описано выше) и новый параметр — vbModeless. Последний параметр как раз и дает указание Excel’ю открыть форму и продолжить выполнение макроса дальше, а не застывать на месте.
Всё понятно, modal=false, а я думал, что за vbModeless…
3.7K
14 марта 2004 года
dedtolya
41 / / 12.10.2003
Цитата:
Originally posted by Lev_ru
Всё понятно, modal=false, а я думал, что за vbModeless…
Dim Рис As Object
Dim p1 As Long, a As Long
p = 5000000 ‘ длительность паузы
Set Рис = ActiveSheet.Pictures.Insert( _
«C:Мои документыМои рисункиfloverpussywillow2.gif»)
For i = 1 To p
a = a + 1
Next
Рис.Delete
Вместо цикла можно использовать функцию Timer
Успехов dedtolya
Ранее я рассмотрел методы создания пользовательских форм и основы работы с ними (если вы никогда не работали с пользовательскими формами, рекомендую для начала прочитать указанную заметку). В настоящем материале приводится целый ряд практически полезных примеров пользовательских диалоговых окон.
Рис. 1. Меню на основе элементов управления CommandButton или ListBox
Скачать заметку в формате Word или pdf, примеры в архиве
Создание меню
Меню можно создать с помощью элементов управления CommandButton (рис. 1; см. файл userform menus.xlsm) и с помощью элемента управления ListBox. Каждый элемент управления CommandButton имеет собственную процедуру обработки событий. Например, представленная ниже процедура выполняется после щелчка на кнопке CommandButton1:
Private Sub CommandButton1_Click() Me.Hide Call Macro1 Unload Me End Sub |
Эта процедура приводит к вызову макроса Macro1 и закрытию диалогового окна UserForm. После щелчка на других кнопках (отличных от CommandButton1) вызываются похожие процедуры обработки событий.
В случае использования элемента управления ListBox, перед отображением пользовательского диалогового окна вызывается процедура обработки события Initialize. В следующей процедуре используется метод Addltem для добавления шести опций в элемент управления ListBox:
Private Sub UserForm_Initialize() With ListBox1 .AddItem «Макрос1» .AddItem «Макрос2» .AddItem «Макрос3» .AddItem «Макрос4» .AddItem «Макрос5» .AddItem «Макрос6» End With End Sub |
Процедура обработки события привязывается к кнопке Выполнить:
Private Sub ExecuteButton_Click() Select Case ListBox1.ListIndex Case -1 MsgBox «Выберите макрос из списка.» Exit Sub Case 0: Me.Hide: Call Macro1 Case 1: Me.Hide: Call Macro2 Case 2: Me.Hide: Call Macro3 Case 3: Me.Hide: Call Macro4 Case 4: Me.Hide: Call Macro5 Case 5: Me.Hide: Call Macro6 End Select Unload Me End Sub |
Данная процедура проверяет значение свойства Listlndex элемента управления ListBox, чтобы определить, какой элемент выбран в списке (если свойство Listlndex равно –1, то не выбран ни один из элементов). После этого запускается соответствующий макрос.
Выбор диапазона в пользовательской форме
Некоторые встроенные диалоговые окна Excel предоставляют пользователю возможность выбирать диапазон. Например, диалоговое окно Подбор параметра, для вызова которого следует пройти по меню Данные –> Работа с данными –> Анализ «что если « –> Подбор параметра, запрашивает у пользователя два диапазона. Пользователь может или ввести имя диапазона непосредственно в окне, или применить мышь для выделения диапазона на листе.
Пользовательское диалоговое окно также обеспечивает подобную функциональность. Это достигается с помощью элемента управления RefEdit. Данный элемент выглядит иначе, чем элемент выбора диапазона во встроенных диалоговых окнах Excel, однако работает точно так же. Если пользователь щелкнет на небольшой кнопке в правой части элемента управления, то диалоговое окно временно исчезнет, а на экране будет отображен небольшой указатель выбора диапазона.
К сожалению, элемент управления RefEdit не позволяет использовать специальные клавиши при выделении диапазона (например, невозможно выделить ячейки до конца столбца, нажав комбинацию клавиш Shift+↓). Кроме того, после щелчка мышью на маленькой кнопке в правой части элемента управления (для временного сокрытия диалогового окна) можно применять только выделения с помощью мыши. Клавиатуру в этом случае применять нельзя.
На рис. 2 представлено пользовательское диалоговое окно с добавленным элементом управления RefEdit (см. файл range selection demo.xlsm). Это диалоговое окно выполняет простую математическую операцию над всеми не содержащими формул и непустыми ячейками указанного диапазона. Выполняемая операция задается активным переключателем OptionButton.
Рис. 2. С помощью элемента управления RefEdit можно выбрать диапазон
Элемент управления RefEdit возвращает текстовую строку, которая представляет выбранный диапазон. Можно преобразовать эту строку в объект Range. Для этого используется оператор:
Set UserRange = Range(RefEditl.Text)
Удачной практикой считается инициализация элемента управления RefEdit для представления текущего выделения. Для этого в процедуре UserForm_Initialize воспользуйтесь оператором:
RefEditl.Text = ActiveWindow.RangeSelection.Address
Для достижения наилучших результатов не помещайте элемент управления RefEdit внутри элемента Frame либо MultiPage. Это может привести к сбою в работе Excel. Элемент управления RefEdit не всегда возвращает действительный диапазон. Выделение диапазона указателем мыши — это один из способов присвоения значения данному элементу управления. Пользователь может ввести в поле любой текст, а также отредактировать или удалить уже отображаемый текст. Таким образом, предварительно необходимо убедиться, что диапазон является допустимым.
Следующий код — это пример одного из способов проверки допустимости введенного значения. Если определено, что значение неправильное, то пользователю выдается сообщение, а элемент управления RefEdit становится активным, предоставляя возможность ввести корректный диапазон.
On Error Resume Next Set UserRange = Range(RefEdit1.Text) If Err 0 Then MsgBox «Выбран некорректный диапазон» RefEdit1.SetFocus Exit Sub End If On Error GoTo 0 |
Пользователь может щелкнуть на вкладке одного из листов при выборе диапазона, применив элемент управления RefEdit. Поэтому не всегда выбранный диапазон находится на активном рабочем листе. Если пользователем выбран другой лист, то адрес диапазона указывается после имени листа, на котором этот диапазон находится. Если необходимо получить от пользователя выделение в виде одной ячейки, то можно указать верхнюю левую ячейку выделенного диапазона. Воспользуйтесь следующим оператором:
Set OneCell = Range(RefEditl.Text).Range("
Al"
)
Создание заставки
Некоторые разработчики предпочитают отображать определенную вступительную информацию при запуске приложения. Эта методика называется заставкой. Без сомнения, все пользователи видели заставку Excel, которая отображается несколько секунд при запуске программы. В приложении Excel заставку можно создать с помощью пользовательского диалогового окна. В приведенном ниже примере реализуется автоматическое отображение заставки, которое исчезает по истечении пяти секунд (рис. 3; см. файл splash screen.xlsm). Для создания заставки выполните следующие действия:
- Создайте рабочую книгу.
- Активизируйте редактор VBE и вставьте пользовательское диалоговое окно в проект. Код в этом примере предполагает, что объект UserForm называется UserForm1.
- Поместите любые необходимые элементы управления в только что созданное диалоговое окно UserForm1. Например, вам может понадобиться расположить элемент управления Image, который будет содержать логотип компании (рис. 3).
- Вставьте процедуру в модуль кода для объекта ЭтаКнига (ThisWorkbook):
Private Sub Workbook_Open() UserForm1.Show End Sub |
- Вставьте следующую процедуру в модуль кода для объекта UserForm1 (эта процедура обеспечивает пятисекундную задержку). Если нужно другое время задержки, измените значение аргумента функции TimeValue.
Private Sub UserForm_Activate() Application.OnTime Now + TimeValue(«00:00:05»), «KillTheForm» End Sub |
Рис. 3. Эта заставка на короткое время появляется на экране после открытия рабочей книги
- В общий модуль VBA вставьте следующую процедуру.
Private Sub KillTheForm() Unload UserForm1 End Sub |
При открытии рабочей книги будет выполнена процедура Workbook_Open и появится диалоговое окно UserForm (п. 4). В этот момент генерируется событие Activate, которое приводит к выполнению процедуры UserForm_ Activate (п. 5). Данная процедура использует метод OnTime объекта Application для выполнения процедуры KillTheForm в определенный момент времени. Однако предварительно определена задержка в пять секунд с момента возникновения события Activate. Процедура KillTheForm просто выгружает диалоговое окно UserForm из памяти.
- В качестве необязательного действия можно добавить элемент управления CommandButton с именем CancelButton, установить его свойство Cancel равным True и добавить представленную ниже процедуру обработки события в модуль кода формы UserForm.
Private Sub CancelButton_Click() Unload Me End Sub |
Таким образом, пользователь сможет закрыть заставку, прежде чем пройдет указанное время задержки. Окно будет закрыто также в результате нажатия клавиши . Эту небольшую кнопку можно разместить за другим объектом, чтобы она не была видна.
Помните о том, что заставка не будет отображаться, если рабочая книга загружена не полностью. Другими словами, если нужно отобразить заставку только для того, чтобы пользователь не скучал во время загрузки рабочей книги, описанная выше методика не годится.
Для того чтобы выполнить VBA-процедуру при открытии документа, нужно так отобразить пользовательское диалоговое окно в немодальном режиме, чтобы код продолжал выполняться. Для этого измените процедуру WorkbookOpen следующим образом.
Private Sub Workbook_Open() UserForml.Show vbModeless ‘ другой код End Sub |
Отключение кнопки закрытия пользовательского диалогового окна
Если пользовательское диалоговое окно уже отображено на экране, щелчок на кнопке Закрыть в правом верхнем углу приведет к выгрузке формы UserForm из памяти. Иногда этого допускать нельзя. Например, иногда требуется, чтобы диалоговое окно UserForm закрывалось только после щелчка на специальной кнопке CommandButton. Несмотря на то что реально отключить кнопку Закрыть невозможно, вы вправе предотвратить закрытие диалогового окна, вызванное щелчком на этой кнопке. Для этого воспользуйтесь обработчиком события QueryClose (см. файл gueryclose demo.xlsm). Следующая процедура, которая расположена в модуле кода диалогового окна UserForm, выполняется перед закрытием формы (т.е. в момент возникновения события QueryClose).
Private Sub UserForm_QueryClose _ (Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then MsgBox «Щелкните на кнопке OK для закрытия формы.» Cancel = True End If End Sub |
Процедура UserForm_QueryClose использует два аргумента. Аргумент CloseMode содержит значение, которое указывает на причину возникновения события QueryClose. Если значение аргумента CloseMode равно vbFormControlMenu (встроенная константа), значит, пользователь щелкнул на кнопке Закрыть. В таком случае будет отображено сообщение (рис. 4); аргумент Cancel устанавливается равным True, и форма не закрывается.
Рис. 4. Процедура перехватывает закрытие окна, и оставляет его открытым
Имейте в виду, что пользователь может нажать клавиши , прекратив тем самым выполнение макроса. В рассматриваемом примере нажатие клавиш во время отображения формы UserForm на экране приведет к тому, что пользовательское диалоговое окно будет закрыто. Во избежание этого выполните следующий оператор до отображения пользовательского диалогового окна:
Application.EnableCancelKey = xlDisabled
Прежде чем добавить этот оператор, удостоверьтесь, что в приложении нет ошибок. В противном случае возникает опасность формирования бесконечного цикла.
Изменение размера диалогового окна
Во многих приложениях используются окна, которые могут изменять собственные размеры, добавляя кнопки и опции. Например, высота диалогового окна Excel Найти и заменить, которое отображается после выбора команды Главная –> Редактирование –> Найти и выделить –> Заменить, увеличивается после щелчка на кнопке Параметры.
Изменение размеров пользовательского диалогового окна осуществляется путем изменения значений свойств Width и Height объекта UserForm. На рис. 5а показано первоначальное диалоговое окно, а на рис. 5б показано это же окно после щелчка на кнопке Параметры. Обратите внимание на то, что надпись на кнопке изменяется в зависимости от размера диалогового окна (см. файл change userform size.xlsm).
Рис. 5. Диалоговое окно: вверху – в стандартном режиме; внизу – после нажатия на кнопке Параметры
Создавая пользовательское диалоговое окно, определите его максимальный размер, чтобы получить доступ ко всем элементам управления. После этого воспользуйтесь процедурой UserForm_Initialize для установки размеров диалогового окна по умолчанию.
В коде применяются две константы, определенные в верхней части модуля.
Const SmallSize As Integer = 124
Const LargeSize As Integer = 164
Пример предназначен для печати рабочих листов активной книги. Он позволяет пользователю указать листы, которые необходимо . Ниже приведена процедура обработки события, которая выполняется после щелчка на кнопке Параметры.
Private Sub OptionsButton_Click() If OptionsButton.Caption = «Параметры >>» Then Me.Height = LargeSize OptionsButton.Caption = «>» End If End Sub |
Эта процедура проверяет значение свойства Caption объекта CommandButton и устанавливает значение свойства Height объекта UserForm в соответствии с полученным значением свойства Caption.
Если элементы управления не отображаются из-за того, что находятся за пределами границы диалогового окна, соответствующие этим элементам управления комбинации клавиш будут продолжать функционировать. В рассматриваемом примере пользователь может нажать клавиши (для выбора альбомной ориентации страницы), даже если соответствующий элемент управления не отображается на экране.
Масштабирование и прокрутка листа в пользовательском диалоговом окне
Для прокрутки и масштабирования листа при активном диалоговом окне можно применить элемент управления ScrollBar (рис. 6; см. файл zoom and scroll sheet.xlsm). В этом примере масштаб можно изменять в диапазоне от 100 до 400%. Два элемента управления ScrollBar в нижней части диалогового окна позволяют прокручивать лист по горизонтали и по вертикали.
Рис. 6. Элементы управления ScrollBar позволяют прокручивать лист и изменять его масштаб
Элементы управления инициализируются в процедуре UserForm_Initialize:
Private Sub UserForm_Initialize() LabelZoom.Caption = ActiveWindow.Zoom & «%» ‘ Масштабирование With ScrollBarZoom .Min = 10 .Max = 400 .SmallChange = 1 .LargeChange = 10 .Value = ActiveWindow.Zoom End With ‘ Прокрутка по горизонтали With ScrollBarColumns .Min = 1 .Max = ActiveSheet.UsedRange.Columns.Count .Value = ActiveWindow.ScrollColumn .LargeChange = 25 .SmallChange = 1 End With ‘ Прокрутка по вертикали With ScrollBarRows .Min = 1 .Max = ActiveSheet.UsedRange.Rows.Count .Value = ActiveWindow.ScrollRow .LargeChange = 25 .SmallChange = 1 End With End Sub |
Эта процедура позволяет устанавливать значения различных свойств элементов управления ScrollBar. Значения определяются на основе данных, полученных из активного окна. При использовании элемента управления ScrollBarZoom выполняется процедура ScrollBarZoom_Change. Она устанавливает значение свойства Zoom объекта ActiveWindow равным значению свойства Value элемента управления ScrollBar. Кроме того, изменяется текст подписи, которая представляет текущий масштаб рабочего листа.
Private Sub ScrollBarZoom_Change() With ActiveWindow .Zoom = ScrollBarZoom.Value LabelZoom = .Zoom & «%» .ScrollColumn = ScrollBarColumns.Value .ScrollRow = ScrollBarRows.Value End With End Sub |
Прокрутка листа осуществляется с помощью двух процедур. Эти процедуры устанавливают значение свойств ScrollRow и ScrollColumns объекта ActiveWindow равными значениям свойств Value элементов управления ScrollBar.
Private Sub ScrollBarColumns_Change() ActiveWindow.ScrollColumn = ScrollBarColumns.Value End Sub Private Sub ScrollBarRows_Change() ActiveWindow.ScrollRow = ScrollBarRows.Value End Sub |
При нажатии на кнопку Ok пользовательская форма закрывается:
Private Sub OKButton_Click() Unload Me End Sub |
Применение элемента управления MultiPage
Элемент управления MultiPage применяется при отображении в пользовательских диалоговых окнах множества элементов управления. Элемент управления MultiPage позволяет группировать опции, а также размещать каждую группу на отдельной вкладке (рис. 7; см. файл multipage control demo.xlsm). Панель инструментов Toolbox также включает элемент управления TabStrip, напоминающий элемент управления MultiPage. Однако в отличие от MultiPage, элемент управления TabStrip не может включать другие объекты. Поскольку элемент управления MultiPage является более гибким, вряд ли вам придется обращаться к элементу управления TabStrip.
Рис. 7. Элемент управления MultiPage группирует элементы управления на страницах, доступ к которым обеспечивается с вкладки
Вкладка (или страница), которая отображается поверх всех остальных, определяется значением свойства Value элемента управления MultiPage. Значение 0 соответствует первой вкладке. Значение 1 вызывает отображение второй вкладки и т.д. По умолчанию элемент управления MultiPage состоит из двух страниц. Для того чтобы добавить дополнительные вкладки, щелкните на любой вкладке правой кнопкой мыши и в контекстном меню выберите пункт New Page.
При работе с элементом управления MultiPage щелкните на вкладке, чтобы установить свойства страницы. В окне Properties отобразятся свойства, значения которых можно изменить. Иногда сложно выделить сам элемент управления MultiPage, так как щелчок на нем приводит к выделению страницы элемента управления. Для того чтобы выделить только элемент управления, щелкните на его границе. Кроме того, можете воспользоваться клавишей для циклического перемещения между элементами управления. Еще одним вариантом выделения элемента управления является выбор пункта MultiPage из раскрывающегося списка окна Properties.
Если элемент управления MultiPage содержит много вкладок, то присвойте его свойству MultiRow значение True, чтобы отобразить вкладки в несколько строк. Если необходимо, то вместо вкладок можно отображать кнопки. Достаточно изменить значение свойства Style на 1. Если значение свойства Style равно 2, элемент управления MultiPage не будет отображать ни вкладки, ни кнопки.
Свойство TabOrientation определяет расположение вкладок на элементе управления MultiPage. Для каждой страницы можно установить эффект перехода. Для этого воспользуйтесь свойством TransitionEffect. Например, щелчок на вкладке приведет к тому, что новая страница «отодвинет» старую. Применяйте свойство TransitionPeriod, чтобы задать скорость эффекта перехода.
Использование внешних элементов управления
Пример, рассматриваемый в этом разделе, основан на элементе управления Microsoft Windows Media Player. Несмотря на то что он не является элементом управления Excel (настраивается при установке Windows), он прекрасно работает с формами UserForm. Для того чтобы воспользоваться элементом управления Microsoft Windows Media Player выполните следующие действия:
- Активизируйте среду VBE.
- Создайте новую пользовательскую форму: Insert –> UserForm.
- Щелкните правой кнопкой мыши на панели Toolbox и в контекстном меню выберите параметр Additional Controls (Дополнительные элементы управления). Если окно Toolbox не отображается, выполните команду View –> Toolbox.
- В окне Additional Controls установите флажок Windows Media Player (рис. 8).
- Щелкните на кнопке ОК. Набор инструментов пополнится новым элементом управления.
Рис. 8. Подключение элемента управления Microsoft Windows Media Player
На рис. 9 показаны элемент управления Windows Media Player, встроенный в форму UserForm, а также окно Properties (см. также файл mediaplayer.xlsm, расположенный в отдельной папке). Свойство URL определяет URL-ссылку воспроизводимой композиции (музыкальная запись или видеоролик). Если композиция находится на жестком диске вашего компьютера, свойство URL определяет полный путь и имя соответствующего файла.
Рис. 9. Элемент управления Windows Media Player, встроенный в форму
На рис. 10 показан пример использования этого элемента управления. Для сокрытия окна, предназначенного для отображения видеороликов, была уменьшена высота окна элемента управления Windows Media Player. Также был добавлен список, созданный на основе элемента управления ListBox, в котором отображаются аудиофайлы MP3. После щелчка на кнопке Пуск начинается воспроизведение выбранного файла. Щелчок на кнопке Закрыть приведет к прекращению воспроизведения и к закрытию окна UserForm. Форма UserForm отображается в немодальном режиме, поэтому можно продолжать работу во время отображения диалогового окна.
Рис. 10. Элемент управления Windows Media Player в действии
Названия МРЗ-файлов в окне списка отображаются с помощью процедуры UserForm_Initialize. В целях упрощения алгоритма аудофайлы находятся в той же папке, что и рабочая книга. Можно реализовать и более гибкий подход, предусматривающий выбор пользователем папки, содержащей требуемые аудиофайлы.
Private Sub UserForm_Initialize() Dim FileName As String ‘ Заполнение списка MP3-файлами FileName = Dir(ThisWorkbook.Path & «*.mp3», vbNormal) Do While Len(FileName) > 0 ListBox1.AddItem FileName FileName = Dir() Loop ListBox1.ListIndex = 0 End Sub |
Код обработчика событий PlayButton_Click включает единственный оператор, который присваивает выбранное имя файла свойству URL объекта WindowsMediaPlayer1.
Private Sub PlayButton_Click() ‘ Свойство URL загружает трек и запускает плеер WindowsMediaPlayer1.URL = _ ThisWorkbook.Path & «» & ListBox1.List(ListBox1.ListIndex) End Sub |
Анимация элемента управления Label
Форма UserForm (рис. 11) представляет собой интерактивный генератор случайных чисел. Два элемента управления TextBox содержат верхнее и нижнее значения для случайного числа. Элемент управления Label изначально отображает четыре знака вопроса, а после щелчка мышью на кнопке Пуск отображаются анимированные случайные числа. При этом кнопка Пуск превращается в кнопку Остановить, а щелчок на ней мышью приводит к прекращению анимации и отображению случайного числа. Код, связанный с кнопкой генератора случайных чисел можно найти в модуле UserForm1 файла random number generator.xlsm.
Рис. 11. Генератор случайных чисел
Поскольку кнопка выполняет две функции (запуск и остановка анимации), в процедуре используется общедоступная переменная Stopped, с помощью которой отслеживается состояние кнопки. Первая часть процедуры состоит из двух структур If-Then, с помощью которых проверяется содержимое элементов управления TextBox. Два другая подобных оператора позволяют удостовериться в том, что меньшая величина действительно не превосходит большей величины. В следующем разделе кода осуществляется настройка размера шрифта элемента управления Label на основании максимальной величины. Цикл Do Until loop генерирует и отображает случайные числа. Обратите внимание на оператор DoEvents. Он позволяет Excel использовать все возможности операционной системы. Если бы его не было, элемент управления Label не смог бы отобразить каждое генерируемое случайное число. Другими словами, именно оператор DoEvents делает возможной анимацию.
Форма UserForm также включает элемент управления CommandButton, который выполняет функции кнопки Отмена. Этот элемент управления находится за пределами окна UserForm, поэтому невидим. Свойству Cancel элемента управления CommandButton присвоено значение True. Вследствие этого нажатие клавиши дает тот же эффект, что и щелчок на кнопке Отмена. Соответствующая процедура обработки событий присваивает переменной Stopped значение True и выгружает форму UserForm.
По материалам книги Джон Уокенбах. Excel 2010. Профессиональное программирование на VBA. – М: Диалектика, 2013. – С. 439–449, 466–472.
Create a pop-up window, splash screen, that appears when Excel starts.
This allows you to add a new level of professionalism to your workbooks.
Sections:
Add a Splash Screen
AutoClose the Splash Screen
Remove Borders and the Title Bar from the Splash Screen
Notes
Add a Splash Screen
Create a UserForm
A UserForm is what will be displayed as the splash screen.
If you do not know how to create a UserForm, view our tutorial on creating a UserForm.
Here is a simple splash screen example:
This contains only a Label and an Image.
Make the UserForm Run When Excel Starts
The splash screen must appear when Excel first starts. To do this, we have to put a piece of code within the ThisWorkbook section of the VBA window.
Go to the VBA window (Alt+F11) > Double-click ThisWorkbook > Place the code into the window that opens.
Private Sub Workbook_Open()
UserForm1.Show
End Sub
UserForm1 is the name of the form that you want to be displayed.
If you already have code that runs for the Workbook_Open event, just paste the line UserForm1.Show into that code section.
AutoClose the Splash Screen
You can have the splash screen appear for a few seconds and then disappear. This is a simple way to let the user see it without making them take an action to close the window.
To do this, we put two lines of code into the UserForm_Activate event.
Go to the VBA window (Alt+F11) > right-click the form > click View Code > paste this code:
Private Sub UserForm_Activate()
'Pause the window.
Application.Wait (Now + TimeValue("00:00:04"))
'Close the window.
Unload Me
End Sub
This will make the splash screen appear for 4 seconds.
Change the 04 to any value from 1 to 59 to keep the window open for more or less time.
Once you do this, every time you go to view the splash screen, it will only appear for the prescribed amount of time.
Remove Borders and the Title Bar from the Splash Screen
To make the splash screen look more professional, you can remove the title bar, that contains the title of the window, and the close button, as well as removing the border that surrounds the form.
Note: before you do this, you must have a way to close the form, either by placing a close button on the form, making a click-event that closes the form, or by having the form auto-close after so many seconds, like we did in the example above.
Removing the Title bar and border is an annoyingly complex thing to do, as such, we have an entire tutorial on this topic and you should view it if you want to do this: Remove the Title Bar from a UserForm.
Before Removing the Title Bar and Border
After Removing the Title Bar and Border
Notes
Macros must be enabled for the splash screen to appear.
Make sure that you have a way to close the splash screen if you have removed the title bar and border!
Download the sample file for this tutorial to get this example in Excel.
Similar Content on TeachExcel
Create a Custom Function in Excel — UDF
Tutorial: How to create a custom worksheet function in Excel. These are called User Defined Function…
Dynamic Named Range in Excel
Tutorial:
How to create a named range that expands automatically when a new value is added to the r…
Make a UserForm in Excel
Tutorial: Let’s create a working UserForm in Excel.
This is a step-by-step tutorial that shows you e…
Create a Line Chart with a Macro in Excel
Macro: Create a line chart in Excel with this macro. This allows you to quickly and easily create…
Create a Bar Chart With a Macro in Excel
Macro: Create a bar chart in Excel with this macro. You will be able to quickly and easily turn a…
Thermometer Chart in Excel
Tutorial:
How to create a thermometer chart in Excel.
This is what we want:
Steps to Create a The…
Subscribe for Weekly Tutorials
BONUS: subscribe now to download our Top Tutorials Ebook!
Автоматический запуск макроса при открытии книги
Смотрите такжеМне всегда хватает 2) Обычно это один. В отличие от файл и Personal.xlsb, но таблиц и т.п. не видно -Insert — UserFormPrivate Sub Workbook_Open() модуль листа, ночтобы создать настраиваемый шаблонперейдите в папку, в выберите пункт Сохранить быть отменено, поэтомуЭтаКнигаПримечание: одного из двухпробовал прописать макрорекордером из следующих вариантов:
процедур, код функцийPERSONAL.XLSB второго мы не Вопрос — где отобразите соответствующее окно. Появится пустая сераяIf Sheets(«Лист1»).[a1] <> ничего не сортируется. книги или листа,
которой хранится книга
как > Компьютер, убедитесь, что для. Если вы Мы стараемся как можно проверенных способов открытие книги -C:Program FilesMicrosoft OfficeOffice12XLSTART
начинаются с оператора. Его ветку которого видим. Таким образом
эти несколько строк через меню оконная форма будущей 8 Then MsgBoxSub Worksheet_Open() введите любое имя; (XLSTART или альтернативная нажмите Обзор и тестирования кода на не видите окно оперативнее обеспечивать вас
-
KuklP тоже не помоглоC:Documents and SettingsComputerApplication DataMicrosoftExcelXLSTARTFunction можно развернуть плюсиком
-
все макросы, которые кода хранить? ВедьView — Project Explorer заставки. Добавим на «Это последнее предупреждение!»Range(«J1»).Selectнажмите Сохранить; папка), выберите книгу выберите папку XLSTART. пустую книгу или проекта, можно перейти актуальными справочными материалами: Где он там ((((C:Usersимя-вашей-учетной-записиAppDataRoamingMicrosoftExcelXLSTARTили слева, добравшись до хранятся в ЛКМ
-
от того, где) и добавьте в нее изображение при
Sheets("Лист1").[a1] = 8
Selection.AutoFilter Field:=1, Criteria1:="НАвыберите Файл > Закрыть.
и нажмите Удалить. -
В чистой установке выпуска копию существующей книги. в на вашем языке. такое сказал? ИМожет кто нибудь
Как вариант, можно спроситьPublic FunctionModule1 оказываются доступы для
-
макрос хранится будет него следующий код: помощи панели инструментовActiveWorkbook.Save
ПЕЧАТЬ»Автоматический макрос (например, Auto_Open),Вы можете сохранить часто Windows Vista или
Если код нережим Эта страница переведена что по-твоему означает в курсе можно о положении этой
-
, а заканчиваются на, где и хранится запуска в любой потом зависеть гдеPrivate Sub Workbook_Open()ToolboxEnd Sub
-
End Sub записанный в книгу, используемые настройки книги более новой версии вас устраивают, закройте> автоматически, поэтому ее
-
строка: ли так сделать папки сам Excel
End Function код только что момент, пока открыт
он сможет (или UserForm1.Show End Sub(если у васЛист1 скрытьКак правильно сделать? которая открывается при в шаблоне и путь к папке книгу без сохраненияОкно проекта текст может содержать
-
cn.Open sCon ? с помощью VBA.: записанного нами бессмысленного
-
Excel. не сможет) работать.И, наконец, вставьте обычный ее не видно,_Boroda_Извините, в макросах запуске Excel, запускается автоматически открывать его XLSTART обычно выглядит
-
изменений.или нажмите клавиши неточности и грамматические
?
???? очень нужна Для этого в
Код необходимо аналогичным образом -
макроса:Если вы еще ниЕсли макрос решает небольшую модуль ( то зайдите в: Проще всего ставить
я новичок. сразу же при каждый раз при так:
-
Откройте вкладкуCtrl + R ошибки. Для насKuklP
помощь …. редакторе Visual Basic скопировать в любойПоздравляю, вы только что
support.office.com
Автоматическое открытие определенной книги или шаблона при запуске Excel
разу не пользовались локальную проблему вInsert — Module меню на листе метку.webley ее открытии. запуске Excel.Office 2013 — C:Пользователи(ИмяРазработчик. важно, чтобы эта
: Кросс: http://www.excel-vba.ru/forum/index.php?topic=2225.0Serge_007 (кнопка модуль книги PERSONAL.XLSB создали себе Личную ЛКМ, то изначально отдельно взятом файле) и скопируйте туда
-
View — Toolbox А лучше наоборот: Лист не открывают,Чтобы макрос не запустился,Чтобы использовать шаблон книги, пользователя)AppDataMicrosoftExcelXLSTART;
и щелкните элементВ открывшейся в правой
статья была вамAndreTM
-
: У Вас слишкомVisual Basic и затем можно Книгу Макросов! Только
файл Personal.xlsb не (например обрабатывает внесенные
это:): — изначально метка
а активируют :) удерживайте клавишу SHIFT создайте книгу, котораяOffice 2013 C2R — C:Пользователи(ИмяVisual Basic части окна модуля полезна. Просим вас: много знаков вопроса
Использование альтернативной папки автозагрузки
на вкладке будет вызвать функцию не забудьте нажать существует. Самый легкий
-
в конкретный отчетPrivate Sub KillTheForm()
-
Нажмите кнопку есть, макрос приPrivate Sub Worksheet_Activate() во время запуска содержит листы, стандартный
пользователя)AppDataMicrosoftExcelXLSTART.. вставьте следующий код: уделить пару секундЦитата и скобокРазработчик обычным образом, как на кнопку сохранения способ его создать данные особым образом), Unload UserForm1 EndImage запуске проверяет ееwebley Excel. текст (например, заголовкиЕсли вы выполнили обновление
Отмена открытия конкретной книги при запуске Excel
В левой частиPrivate Sub Workbook_Open() и сообщить, помогла
-
(KuklP)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Где он тамА макрорекордер пишет) нужно открыть окно любую стандарную функцию с дискеткой в
Автоматическое открытие шаблона книги при запуске Excel
— это записать то логично хранить Sub и растяните на форме наличие, если есть,: Сразу файл не
Alex4 страниц, столбцов и с другой версииПроекта VBA’ Put your ли она вам, такое сказал? И открытие:Immediate Excel, нажав кнопку
левом верхнем углу рекордером какой-нибудь ненужный
-
код внутри этого
-
Все. Можно закрывать редактор прямоугольник — в то выполняется и
-
посмотрел — поскольку
-
: Цель: автоматически обновлять сток), формулы, макросы,
-
Windows, путь можетразверните папку code here с помощью кнопок что по-твоему означает200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub OpenFile()
-
сочетанием клавишf на панели инструментов.
-
бессмысленный макрос, но же файла. Без Visual Basic, сохранять
-
него будет помещено
-
стирает эту метку. лист у вас
-
фильтр в таблице стили и другое
выглядеть так:
-
Проекта VBAEnd Sub
-
внизу страницы. Для строка: cn.Open sCon
-
Workbooks.Open Filename:=»C:путьКнига2.xls»Ctrl+GxДальше все просто. Любой
-
указать в качестве вопросов.
-
файл и пробовать фоновое изображение. Затем Все последующие разы
-
один, скорее всего при открытии страницы форматирование, которое вы
-
Office 2013 — C:Programдля книги, аВставьте код записанные в
-
-
удобства также приводим
-
В вопросе ТС
Отмена запуска автоматического макроса при запуске Excel
End Sub, ввести туда командув строке формул нужный вам макрос места для егоА если макрос должен
-
закрыть-открыть книгу… на панели инструментов макрос проверяет метку имеется ввиду открытие
support.office.com
Автозапуск макроса при открытии книги
Имеется макрос на собираетесь постоянно использовать FilesMicrosoft OfficeOffice 15XLSTART затем дважды щелкните
подпрограмме между строками ссылку на оригинал
фразой «закрытая книга»Цитата? Application.StartupPath
и выбрав функцию (т.е. кусок кода, хранения Личную Книгу быть относительно универсален
При открытии книги ExcelProperties — ее нет
книги. применение фильтра в шаблоне.Office 2013 C2R —
модульSub (на английском языке). подразумевалось, скорее всего,(ek09)200?’200px’:»+(this.scrollHeight+5)+’px’);»>нужно поработать макросоми нажать на в окне начинающийся на — тогда Excel и нужен в выполняет процедуру(если у вас — и неВ модуль книги:Задача: запустить макрос
Настройки, которые можно сохранить C:Program FilesMicrosoft Office
ЭтаКнигаиМакрос, записанный может потребоваться «не открытая в в зарытой книгеЭто
planetaexcel.ru
Выполнение макроса при открытии (активации) листа
EnterМастера ФункцийSub
будет вынужден автоматически любой книге ExcelWorkbook_Open
ее не видно, выполняется дальше.Private Sub Workbook_Open()
автоматически при открытии
в шаблоне:
15rootOffice 15XLSTART.
End Sub
автоматически выполняются при
Excel». Так что, невозможно. Для того
:в категориии заканчивающийся
ее для вас
— как, например,из модуля то выберите вМожно в кодеSheets(1).Activate книгиформатирование ячеек и листа;
Примечание:
В открывшейся в правой
.
открытии конкретной книги.
с этой точки что бы что-то
Полученный путь можно скопировать
Определенные пользователем (User Defined)End Sub
создать. Для этого:
макрос для конвертированияЭтаКнига меню макроса после выполнения
Range(«J1»).SelectПогуглилил — получилосьформатирование страниц и настройки Если книга или части окна модуляЗакройте Пример использует следующую зрения, доступ через сделать с закрытой и вставить в:) можно смело копировать
Откройте вкладку формул в значения?. Эта процедура отображает
View — Properties стереть этот же
planetaexcel.ru
Выполнение макроса один раз при открытии книги excel (Макросы/Sub)
Selection.AutoFilter Field:=1, Criteria1:=»НА вот что, но
области печати для шаблон содержит макрос, вставьте следующий код:Редактор Visual Basic процедуру для показано,
DAO/ADO/ODBC — это книгой — её
верхнюю строку окна
Примеры таких функций можно и вставлять либоРазработчик (Developer)
каждого листа;
Не копировать же на экране нашу) задайте выберите файл
код
ПЕЧАТЬ"
это не запускается
который автоматически запускаетсяPrivate Sub Workbook_Open()(не нужно ничего как это работает. возможность изменить данные. надо открыть. Правда Проводника в Windows в больших количествах в. Если вкладки его код на форму-заставку. При отображении картинки в полеМожно ставить метку,End Sub
автоматически. Как запустить?стили ячеек; при открытии книги,’ Put your
сохранять). Можно также запустить Как мы помним, сделать это можно
и нажать найти в интернете
Module1
Разработчик Visual Basic каждый формы запускается процедура
excelworld.ru
Заставка при открытии книги Excel
Picture но не наopenid.mail.ru/mail/vlad3622340Sub Workbook_Open() Sheets(«таблица»).Range(«B5»).AutoFilterколичество и тип страниц
например Auto_Open, макрос code hereСохранение книги в виде макрос автоматически при
Шаг 1. Создаем экранную форму
наличие на компьютере-клиенте и незаметно, ноEnter или здесь же, либо в отдельныйне видно, то раз в каждуюUserForm_Activate: листе, а в: Спасибо большое, Webley! Field:=2, Criteria1:=»<>0″ End в книге; будет по умолчаниюEnd Subкниги Excel с поддержкой запуске Excel. самого Excel при всё-таки придётся- и мы на сайте (сумма модуль, добавив его ее можно включить книгу? Кроме того,, которая с задержкойВозможно, придется немного изменить свойствах, например.Sub Worksheet_Activate() работает! SubСпасибо!защищенные и скрытые области запускаться при запуске
Вставьте код записанные в макросов (* xlsm)Windows macOS этом совершенно необязательноHugo увидим папку с прописью, приблизительный текстовый предварительно через меню в настройках через рано или поздно, в 5 секунд размер формы, чтобыМожно создавать специальныйА я где-тоLVL книги. Вы можете Excel.
подпрограмме между строкамии закройте ее.Прежде чем начать, убедитесь,Hugo: Сергей, R Dmitry нашим файлом Личной поиск, ВПР 2.0,Insert — ModuleФайл — Параметры -
почти любой пользователь запускает макрос изображение уместилось полностью. проверочный файл вычитал, что Worksheet_Open: поместить этот код скрыть листы, столбцыЕсли вы сохранили автоматическиSub
При открытии книги, код, что отображаются вкладки
Шаг 2. Добавляем управляющий код
: Сергей, ну в сказал, что можно Книги Макросов: конвертация кириллицы в. Хранить все макросы Настройка ленты (Home
приходит к мысли,KillTheForm Чтобы написать наМожно …
и с этим в модуль книги и строки, чтобы запускаемую книгу ви добавленных на процедуры « общем конечно «неТут: http://www.planetaexcel.ru/forum….D=28979 вИ несколько практических нюансов
транслит и т.п.) в одном модуле
— Options - что неплохо было, который убирает форму форме текст, можноDan116
мучился. (ЭтаКнига) предотвратить изменения в
другом месте, выполнитеEnd SubWorkbook_OpenРазработчик
Как это работает?
притрагиваясь» к файлу конце. вдогон:Если вы будете использовать или раскладывать по Customize the Ribbon) бы сложить все с экрана. использовать элемент управления: всем спасибо заЭто в примереalexthegreat ячейках; следующее:.будет выполняться автоматически.
planetaexcel.ru
Как использовать Личную Книгу Макросов
» на ленте. в нём ничегоВообще вся темапри использовании Личной Книги Личную Книгу Макросов, разным — исключительно. макросы в однуЕсли вы еще неLabel идеи! лист один, а: заходите в ВБА,
повторяемый текст, например подписивыберите Файл > ПараметрыЗакройтеПрежде чем начать, убедитесь, Подробнее читайте вкладку изменить нельзя. Ну в тему, без Макросов Excel будет
то рано или вопрос вкуса. ВыглядетьНа вкладке коробку, т.е. иметь знакомы с макросамис панелиЭтот прием позволит Вам в оригинале 6. там слева будут страниц, столбцов и Excel > Дополнительно;Редактор Visual Basic что отображаются вкладки «Разработчик». разве что если воды. запускаться чуть медленнее,
поздно у вас это должно примерноРазработчик их всегда под в Excel, тоToolbox. выводить на экран После открытия книги объекты, смотрите Объект строк;
в разделе Общие в(не нужно ничего «Чтобы использовать в приведенном только изменив адресациюSerge_007 особенно на слабых возникнет желание: так:нажмите кнопку рукой. И может я вам дажеНу, и наконец, выделив окно-заставку при открытии другие листы изменяются ЭТА КНИГА, щелкаетеданные, графические элементы, формулы, поле Каталог автозагрузки сохранять).Разработчик ниже примере, откройте диска: Я Диму конечно ПКподелиться своими накопленными макросамиЗапустить добавленный макрос можноЗапись макроса (Record Macro) быть даже запускать
Как создать Личную Книгу Макросов
немного завидую. Ощущение предварительно всю форму, любой заданной книги вручную и влияют по нему 2 диаграммы и другую введите полный путьСохранение книги в виде» на ленте. новую книгу.И кстати только уважаю, но нет,стоит периодически очищать Личную с другими пользователями в диалоговом окне,. В открывшемся окне не вручную, а всемогущества и осознание можно задать текст в Excel. на этот лист. раза, открывается, далее информацию; к альтернативной папкекниги Excel с поддержкой Это можно сделать:Важно:
что проверил - не верю Книгу от информационногоскопировать и перенести Личную вызываемом с помощью выберите Личную книгу сочетаниями клавиш? И того, что ваш в строке заголовка,Заставка появляется сразу после И вот после наверху будут 2настройки проверки данных; автозагрузки. макросов (* xlsm)В меню выберите команду
- Код VBA не может работают оба вариантаМеня Сергей KukIp мусора, старых и Книгу на другой кнопки макросов (Personal Macro вот тут может Microsoft Excel можно используя свойство открытия файла и его открытия (АКТИВАЦИИ),
- выпадающих списка слевамакросы, гиперссылки и элементыПримечание:и закройте ее.Excel быть отменено, поэтому SQL/ADO. И добавляет, на программерс убедил ненужных макросов и компьютерМакросы (Macros) Workbook) как место
- здорово помочь Личная прокачивать почти доCaption автоматически исчезает через
должно сразу отобразиться выбираете workbook справа ActiveX для форм; Так как ExcelПри открытии книги, код,> убедитесь, что для и обновляет. (к сожалению не т.п.сделать ее резервную копиюна вкладке для хранения записанного Книга Макросов (Personal бесконечности, которые придутв панели несколько секунд. то, что нужно Open и тудапараметры вычислений в книге будет пытаться открыть добавленных на процедуры
предпочтения… тестирования кода наek09 могу найти ссылку,у корпоративных пользователей бываютДля этого нужно будетРазработчик кода и нажмите
Как использовать Личную Книгу Макросов
Macro Workbook). к вам послеPropertiesОткройте редактор Visual Basic печатать. вставляете свой макрос и представлений окон. каждый файл вWorkbook_Open> пустую книгу или: Спасибо за помощь это давно было) иногда сложности с найти файл PERSONAL.XLSB:OKНа самом деле, знакомства с макросами: — в старыхТак что нужно
БЕЗ НАЗВАНИЯ безЧтобы создать шаблон: альтернативной папке автозагрузки,будет выполняться автоматически.ленты и панели инструментов копию существующей книги. всем ! КакаяДля того что
использованием Личной Книги, на диске вашегоВ этом же окне,:Личная Книга Макросов — приятные чувства.В итоге у вас должно версиях Excel это именно в модуль строки sub ивыберите Файл > Сохранить
укажите папку, вЕсли вы постоянно используете. Если код не то интересная штука бы прочитать последовательность т.к. это файл компьютера. По умолчанию, нажав кнопкуОстановите запись кнопкой(ЛКМ)Однако, эта статья для получиться нечто подобное: можно сделать через листа.
end sub как; которой находятся только приложение Excel дляВ категории вас устраивают, закройте получается … байт необходимо открыть в системной скрытой этот файл хранитсяПараметры (Options)Остановить запись (Stop Recording)- это обычный тех, кто ужеЩелкните правой кнопкой мыши менюВопрос решён. Ещё
Если правильно понялв поле Тип файла те файлы, которые работы с однойнастроить ленту книгу без сохраненияв открытой книге контейнер их содержащий папке
Где хранится Личная Книга Макросов
в специальной папке, можно задать сочетаниена вкладке файл Excel в «познал мощь» и
- по форме иСервис — Макрос -
- раз благодарю! Ваш вопрос выберите пункт Шаблон;
- можно открыть с
и той жев списке изменений. ссылка на ячейку (т.е. файл). Наek09 автозапуска Excel, которая клавиш для быстрогоРазработчик (Developer) формате двоичной книги начал использовать макросы выберите Редактор Visual BasicDan116А вообще приложитев поле Сохранить в помощью Excel. Если книгой или создаетеОсновные вкладкиОткройте вкладку в закрытой книге
- кластере HDD -
- : Здравствуйте
- называется XLSTART. Так
запуска макроса сПроверить результат можно, нажав ( (чужие или написанныеView Code (Tools — Macro: Добрый день. файл и Вам укажите папку, в книга с одним новые книги наустановите флажокРазработчик обновляется а макросом это просто последовательностькак макросом книги что все, что клавиатуры. Будьте внимательны: на кнопку
Personal.xlsb самостоятельно — не.В открывшийся модуль формы — Visual BasicСтоит задача, выполнить сделают, потом посмотрите которую нужно сохранить и тем же основе одного шаблона,Разработчик
P.S.
и щелкните элемент нет ))))
- байт, не имеющая 1 открыть закрытую нужно — это сочетания клавиш дляVisual Basic
- ), который автоматически в важно) в своей добавьте такой код: Editor) макрос один раз
- как сделали… думаю шаблон; именем находится и настройте Excel таким.Visual Basic
planetaexcel.ru
как макросом книги 1 открыть закрытую книгу 2 Excel ??????? (Макросы Sub)
Serge_007 привязки к конкретному
книгу 2 Excel добраться до этой макросов различают раскладкутам же на
скрытом режиме открывается повседневной работе.Private Sub UserForm_Activate(), а в новых при открытии книги, будет проще..в поле Имя файла в папке XLSTART,
образом, чтобы вашаНажмите кнопку.: Она обновляется только
файлу. Как-то так… ??????? папки на нашем (русская или английская)
вкладке одновременно с Microsoft
Макрос — это код Application.OnTime Now + кнопкой при последующих открытиях
openid.mail.ru/mail/vlad3622340 сделайте следующее:
и в альтернативной
книга или шаблон
Сохранить
В левой части в том случае,HugoВ идеале нужно ПК. И вот и регистр.Разработчик Excel. Т.е. когда (несколько строк) на TimeValue(«00:00:05»), «KillTheForm» EndVisual Basic
макрос не выполнять.: Доброго дня всемчтобы создать шаблон книги
папке автозагрузки, будет открывались при его
.Проекта VBA если Вы ОТКРЫЛИ
: Я сам не поработать макросом в тут возникает небольшаяКроме обычных макросов-процедур в
- в открывшемся вы просто запускаете языке Visual Basic, Subна вкладке
Как можно реализовать обитателям Планеты Excel! по умолчанию, введите открываться файл из запуске.Чтобы использовать в приведенномразверните папку закрытую книгу и проверял — и зарытой книге а
сложность, потому что Личной Книге можно окне редактора в Excel или открываете которые заставляют ExcelОткройте модульРазработчик (Developer)
наиболее простым способом?Подскажите пожалуйста, как Книга;
папки XLSTART.Чтобы открывать одну и ниже примере, откройтеПроекта VBA внесли в неё
в теме не
у меня почему
местоположение этой папки хранить и
левом верхнем углу любой файл с сделать то, чтоЭтаКнигаи создайте новуюСпасибо! запустить код макроса
чтобы создать шаблон листаЧтобы книга не открывалась ту же книгу новую книгу.для книги, а изменения, после чего отписались как решилось… то макрос книги зависит от версиипользовательские макро-функции на панели диска, на самом вам нужно: обработать
в левом верхнем форму, используя командуNic70y при открытии листа? по умолчанию, введите автоматически при запуске при запуске Excel,Важно: затем дважды щелкните
она опять стала Так что не 1 не работает Windows и Office(UDF = User Defined
Project — VBA Project деле открываются два данные, сформировать отчет, углу (если ее меню
:Вставляю это в Лист; Excel: в меню Файл
Код VBA не может модуль закрытой знаю. в закрытой книге и может различаться. Function)должен появиться наш файла — ваш
excelworld.ru
скопипастить много однообразных
Всякий раз, когда вы запускаете какие-либо программы Microsoft Office, такие как Word, Excel, PowerPoint и т. Д., Вы сначала видите экран-заставку, прежде чем программа действительно запустится. Заставка требуется, чтобы заполнить время между моментом, когда пользователь щелкает значок программы, и до момента полной загрузки программы.
Пока он отображается, происходит инициализация программы. Он не только предлагает вам кнопку «x», чтобы закрыть его, если вы передумаете, вы также можете увидеть такие детали, как загружаемые надстройки, путь к файлу, функции, передаваемые в потоковом режиме, и другие детали.
Хотя всегда можно использовать переключатели, чтобы отключить отображение заставки, Microsoft теперь добавила возможность отключить его в приложениях Office — Word, Excel, PowerPoint.
В Office 2010 нам нужно было создать специальные ярлыки с помощью этих переключателей или просто ввести их в начале поиска и нажать Enter, чтобы отключить заставки в программах Word, Excel и PowerPoint:
- winword / q
- excel / e
- очки силы
В Office 2019/2016/2013 предлагается настройка. Мы возьмем пример Word, но этот параметр доступен по тому же пути в других приложениях Office.
Отключить заставку в Word
При желании вы можете отключить заставку в Word. Для этого:
- Откройте Microsoft Word
- Нажмите «Открыть» на пустом документе.
- В открывшемся окне щелкните его меню «Файл».
- На левой панели выберите «Параметры».
- Выбор варианта откроет диалоговое окно.
- Когда вы видите диалоговое окно, появляющееся на экране вашего компьютера, снимите флажок с последней опции, которая говорит «Показывать начальный экран при запуске этого приложения» в разделе «Параметры запуска».
Нажмите ОК и перезапустите Word.
Экран-заставка не должен появляться на экране вашего компьютера, поскольку он был удален.
Отключить заставку PowerPoint и Excel
Вы увидите возможность отключить заставку в том же месте, в Excel и PowerPoint.
Однако Outlook, OneNote и т. Д. Не предлагают этот параметр.
Обратите внимание, что отключение экрана-заставки никоим образом не ускорит время загрузки приложения, поэтому его удаление, по нашему мнению, вероятно, плохая идея — поскольку вы упустите некоторую отображаемую информацию — в случае сбоя программы Office загрузить. Тем не менее, поскольку некоторым людям не нравится видеть один и тот же экран-заставку каждый раз, и с тех пор Microsoft предоставила пользователям возможность отключить его, мы подумали о том, чтобы поделиться этим советом.
.