Excel макрос с цифровой

Excel для Microsoft 365 Word для Microsoft 365 Outlook для Microsoft 365 PowerPoint для Microsoft 365 Publisher для Microsoft 365 Visio, план 2 Excel 2021 Word 2021 Outlook 2021 PowerPoint 2021 Publisher 2021 Visio профессиональный 2021 Visio стандартный 2021 Excel 2019 Word 2019 Outlook 2019 PowerPoint 2019 Publisher 2019 Visio профессиональный 2019 Visio стандартный 2019 Excel 2016 Word 2016 Outlook 2016 PowerPoint 2016 Publisher 2016 Visio профессиональный 2016 Visio стандартный 2016 Excel 2013 Word 2013 Outlook 2013 PowerPoint 2013 Publisher 2013 Visio профессиональный 2013 Visio 2013 Excel 2010 Word 2010 Outlook 2010 PowerPoint 2010 Publisher 2010 Visio 2010 Visio стандартный 2010 Office 2010 Еще…Меньше

В этой статье описывается, как цифровая подпись макрос в Windows с помощью сертификат. Если у вас еще нет цифрового сертификата, необходимо получить его.

Совет: Чтобы использовать или тестировать проекты макросов на своем компьютере, можно создать собственный самозаверяющий сертификат с помощью средства Selfcert.exe. Дополнительные сведения об этом см. ниже.

Получение цифрового сертификата

Цифровой сертификат можно получить от коммерческого центра сертификации (ЦС), от внутреннего администратора безопасности или ит-специалиста.

Дополнительные сведения о центрах сертификации, предлагающих услуги для продуктов Майкрософт, см. в списке участников программы корневых сертификатов Майкрософт.

Поскольку самостоятельно созданный цифровой сертификат не был выдан официальным доверенным центром сертификации, макросы, подписанные с использованием такого сертификата, называют самозаверяющими макросами. В Microsoft Office самозаверяющие сертификаты считаются надежными только на том компьютере, на котором они добавлены в папку доверенных корневых центров сертификации в хранилище «Сертификаты — текущий пользователь». Это делает его хорошим для тестирования или использования на собственном компьютере или очень небольшом количестве компьютеров, которыми вы управляете, но не очень хорошо для распространения проектов макросов среди других людей.

Создание самозаверяющего сертификата

  1. Перейдите в папку C:Program Files (x86)Microsoft OfficerootOffice16.

    Совет: Если вы не нашли его в этой папке, попробуйте C:Program FilesMicrosoft OfficerootOffice16

  2. Запустите программу SelfCert.exe. Откроется диалоговое окно Создание цифрового сертификата.

  3. В поле Имя вашего сертификата введите описательное имя сертификата.

  4. Нажмите кнопку ОК.

  5. Когда появится сообщение «SelfCert: успех», нажмите кнопку ОК.

  1. Перейдите в папку C:Program FilesMicrosoft Office<версия Office>.

  2. Запустите программу SelfCert.exe. Откроется диалоговое окно Создание цифрового сертификата.

  3. В поле Имя вашего сертификата введите описательное имя сертификата.

  4. Нажмите кнопку ОК.

  5. Когда появится сообщение «SelfCert: успех», нажмите кнопку ОК.

Просмотр сертификата в хранилище личных сертификатов

  1. Откройте Microsoft Edge.

  2. Введите edge://settings/privacy в адресной строке.

  3. Прокрутите вниз до раздела Безопасность и выберите Управление сертификатами.

Цифровая подпись проекта макроса VBA в Excel, PowerPoint, Publisher, Visio, Outlook или Word

  1. Откройте файл, содержащий макрос, который необходимо подписать.

  2. На вкладке Разработчик в группе Код нажмите кнопку Visual Basic.

    Примечание: Если вкладка Разработчик недоступна, перейдите на вкладку Файл . Нажмите кнопку Параметры. Выберите пункт Настроить ленту. В списке Настройка ленты щелкните Разработчик, а затем нажмите кнопку ОК.

  3. В Visual Basic в меню Сервис выберите пункт Цифровая подпись.

  4. Откроется диалоговое окно Цифровая подпись.

  5. Выберите сертификат и нажмите кнопку ОК.

    Примечание: Если вы не выбрали цифровой сертификат или хотите использовать другой сертификат, нажмите кнопку Выбрать. Выберите сертификат и нажмите кнопку ОК.

Добавление метки времени в подпись

Когда пользователи запускают макрос VBA, Office проверка подпись и сертификат, с которым он был подписан. Добавление метки времени в подпись означает, что ваш макрос по-прежнему будет рассматриваться как подписанный даже после истечения срока действия сертификата до тех пор, пока сертификат не будет отозван. Это может уменьшить количество нарушений работы пользователей.

Сертификат, срок действия которого истек, по-прежнему можно использовать для проверки кода. Он просто не может использоваться для подписания нового кода.

Чтобы добавить метку времени, необходимо добавить три раздела в реестр.

Внимание: 
Неправильное изменение реестра может привести к серьезному повреждению системы. Прежде чем вносить изменения в реестр, создайте резервные копии всех важных данных на компьютере.

Клавиша

Тип

Описание

HKCUSoftwareMicrosoftVBASecurityTimeStampURL

REG_SZ 

URL-адрес предпочитаемого сервера меток времени. (Обязательный)

HKCUSoftwareMicrosoftVBASecurityTimeStampRetryCount

REG_DWORD

Количество попыток подключения редактора Visual Basic к серверу меток времени перед сбоем. (Необязательно . Если этот параметр не задан, редактор Visual Basic попытается связаться с сервером только один раз)

HKCUSoftwareMicrosoftVBASecurityTimeStampRetryDelay  

REG_DWORD

Количество секунд (в миллисекундах) редактор Visual Basic будет ожидать между повторными попытками подключения к серверу меток времени. (Необязательно . Если этот параметр не задан, задержка между повторными попытками не будет).

После добавления рабочей записи TimeStampURL редактор Visual Basic автоматически добавит метку времени при цифровой подписи макроса.

Дополнительные примечания

  • Рекомендуется подписывать макросы только после тестирования решения и готовности к распространению: при любом изменении кода в проекте подписанного макроса его цифровая подпись удаляется. Однако если на компьютере имеется действительный цифровой сертификат, который ранее использовался для подписания макроса, при сохранении макрос автоматически подписывается заново.

  • Если вы хотите запретить пользователям решения случайно изменить проект макроса и сделать его недействительным, заблокируйте проект макроса перед его подписью. Цифровая подпись подразумевает, что вы гарантируете, что проект не был изменен с момента его подписания. Ваша цифровая подпись не подтверждает, что вы написали проект. Таким образом, блокировка проекта макроса не мешает другому пользователю заменить цифровую подпись другой подписью. Корпоративные администраторы могут повторно подписывать шаблоны и надстройки, чтобы контролировать, какие пользователи запускают на своих компьютерах.

  • При создании надстроек, меняющих код макросов, нужно разработать способ проверки проекта на наличие цифровой подписи и, если проект подписан, выводить для пользователя предупреждение о следствиях внесения изменений.

Подробнее

Включение или отключение макросов в файлах Microsoft 365

Нужна дополнительная помощь?


The macros that you create in Excel would be written in the programming language VBA (Visual Basic for Applications). You will learn about the Excel macro code in later chapters. As you are aware, when there is an executable code, there is a threat of viruses. Macros are also susceptible to viruses.

What are Macro Viruses?

Excel VBA in which the Macros are written has access to most Windows system calls and executes automatically when workbooks are opened. Hence, there is a potential threat of the existence of a virus written as a macro and is hidden within Excel that are executed on opening a workbook. Therefore, Excel macros can be very dangerous to your computer in many ways. However, Microsoft has taken appropriate measures to shield the workbooks from macro viruses.

Microsoft has introduced macro security so that you can identify which macros you can trust and which you cannot.

Macro Enabled Excel Workbooks

The most important Excel macro security feature is — file extensions.

Excel workbooks will be saved with .xlsx file extension by default. You can always trust workbooks with .xlsx file extension, as they are incapable of storing a macro and will not carry any threat.

Excel workbooks with macros are saved with .xlsm file extension. They are termed as Macro Enabled Excel Workbooks. Before you open such workbooks, you should make sure that the macros they contain are not malicious. For this, you must ensure that you can trust the origin of this type of workbooks.

Ways of Trusting Macro Enabled Workbook

Excel provides three ways to trust a macro enabled workbook.

  • Placing the macro enabled workbooks in a trusted folder

  • Checking if a macro is digitally signed

  • Enabling security alert messages before opening macro enabled workbooks

Placing the macro enabled workbooks in a trusted folder

This is the easiest and best way to manage macro security. Excel allows you to designate a folder as a trusted location. Place all your macro-enabled workbooks in that trusted folder. You can open macro-enabled workbooks that are saved to this location without warnings or restrictions.

Checking if a macro is digitally signed

Digital signatures confirm the identity of the author. You can configure Excel to run digitally signed macros from trusted persons without warnings or restrictions. Excel will also warn the recipient if it has been changed since the author signed it.

Enabling security alert messages before opening macro enabled workbooks

When you open a workbook, Excel warns you that the workbook contains macros and asks whether you wish to enable them. You can click the Enable Content button if the source of the workbook is reliable.

Security

You can set any of these three options in the Trust Center in the Excel Options.

If you work in an organization, the system administrator might have changed the default settings to prevent anyone from changing the settings. Microsoft advises that you do not change security settings in the Trust Center as the consequences can be loss of data, data theft or security compromises on your computer or network.

However, you can learn the macro security settings in the following sections and check if they are to be changed. You have to use your own instinct to decide on any of these options based on the context and your knowledge of the file origin.

Macro Security Settings in Trust Center

The macro settings are located in the Trust Center in the Excel Options. To access the Trust Center, do the following −

  • Click the FILE tab on the Ribbon.

  • Click Options. The Excel Options dialog box appears.

  • Click Trust Center in the left pane.

  • Click the Trust Center Settings button under Microsoft Excel Trust Center.

Macro Settings

The Trust Center dialog box appears.

Trust Center

You will see various options available in the Excel Trust Center in the left pane. You will learn about the options related to Excel macros in the following sections.

Macro Settings

Macro settings are located in the Trust Center.

Macro Settings

Under Macro Settings, four options are available.

  • Disable all macros without notification − If this option is chosen, Macros and security alerts about macros are disabled.

  • Disable all macros with notification − Macros are disabled, but security alerts appear if there are macros present. You can enable macros on a case-by-case basis.

  • Disable all macros except digitally signed macros − Macros are disabled but security alerts appear if there are macros present. However, if the macro is digitally signed by a trusted publisher, the macro runs if you trust the publisher. If you have do not trust the publisher, you will be notified to enable the signed macro and trust the publisher.

  • Enable all macros (not recommended, susceptible to macro viruses) − If this option is chosen, all macros run. This setting makes your computer vulnerable to potentially malicious code.

You have an additional security option under Developer Macro Settings with a Check box.

  • Trust access to the VBA project object model.

    • This option allows programmatic access to the Visual Basic for Applications (VBA) object model from an automation client.

    • This security option is for code written to automate an Office program and manipulate the VBA environment and object model.

    • It is a per-user and per-application setting, and denies access by default, hindering unauthorized programs from building harmful self-replicating code.

    • For automation clients to access the VBA object model, the user running the code must grant access. To turn on access, select the check box.

Defining a Trusted Location

If you think that a macro-enabled workbook is from a reliable source, it is better to move the file to the trusted location identified by Excel, instead of changing the default Trust Center settings to a less-safe macro security setting.

You can find the trusted folder settings in the Trust Center.

Click the Trusted Locations in the Trust Center dialog box. The Trusted Locations set by Microsoft Office appear on the right side.

Trusted Location

You can add new locations, remove the existing locations and modify the existing locations. The identified trusted locations will be treated by Microsoft office as reliable for opening files. However, if you add or modify a location, ensure that the location is secure.

You can also find the options that office does not recommend, such as locations on internet.

Digitally Signed Macros from Reliable Sources

Microsoft provides an option to accommodate digitally signed macros. However, even if a macro is digitally signed, you need to ensure that it is from a trusted publisher.

You will find the trusted publishers in in the Trust Center.

  • Click Trusted Publishers in the Trust Center dialog box. A list of certificates appear on the right side with the details – Issued To, Issued By and Expiration Date.

  • Select a certificate and click View.

Trusted Publishers

The certificate information is displayed.

As you have learnt earlier in this chapter, you can set an option to run a macro that is digitally signed only if you trust the publisher. If you do not trust the publisher, you will be notified to enable the signed macro and trust the publisher.

Using Warning Messages

The Message Bar displays security alert when there are macros in the file that you are opening. The yellow Message Bar with a shield icon alerts you that the macros are disabled.

Warning Messages

If you know that the macro or macros are from a reliable source, you can click n the Enable Content button on the Message Bar, to enable the macros.

You can disable the Message Bar option if you do not want security alerts. On the other hand, you can enable the Message Bar option to increase security.

Enabling / Disabling Security Alerts on the Message Bar

You can enable / disable security alerts with Message Bars as follows −

  • Click the FILE tab on the Ribbon.
  • Click Options. The Excel Options dialog box appears.
  • Click Trust Center.
  • Click the Trust Center Settings button.
  • Click Message Bar.

The Message Bar Settings for all Office Applications appear.

Message Bar

There are two options under — Showing the Message Bar.

Option 1 − Show the Message Bar in all applications when active content such as macros is blocked.

  • This is the default option. The Message Bar appears when potentially unsafe content has been disabled.

  • If you had selected — Disable all macros without notification in the Macro Settings of the Trust Center, this option is not selected and the Message Bar does not appear.

Showing Message

Option 2 − Never show information about blocked content.

If this option if selected, it disables the Message Bar and no alerts appear about security issues, regardless of any security settings in the Trust Center.

Blocked

Чтобы добавить цифровую подпись в рабочую книгу, содержащую макрос, необходимо использовать редактор Visual Basic. Если вы откроете рабочую книгу, которая содержит некорректно работающий подписанный проект макроса, макрос будет отключен по умолчанию и программа выведет на экран предупреждение о потенциальной опасности. Нажмите

Параметры в строке предупреждения, чтобы отобразить данные об ошибке. Для получения дополнительной информации нажмите Показать данные подписи, чтобы отобразить сертификат и данные об издателе. Если цифровая подпись работает некорректно — срок ее действия истек, она издана ненадежным издателем или рабочая книга была изменена, изображение сертификата будет содержать красный знак X. При обнаружении проблемы свяжитесь с создателем подписи или сохраните рабочую книгу в надежном расположении, чтобы осуществить самостоятельную проверку безопасности макроса.

Чтобы подписать проект макроса:

Откройте документ, содержащий проект макроса, а затем нажмите вкладку Разработчик.

Нажмите кнопку Visual Basic, чтобы открыть окно Visual Basic.

Вызовите меню Сервис, а затем выберите Цифровая подпись.

Нажмите Выбрать.

Выберите сертификат из списка.

Чтобы отобразить сертификат, нажмите Просмотр сертификата, а затем нажмите ОК.

Нажмите ОК

Снова нажмите ОК.

По окончании нажмите кнопку Сохранить, щелкните меню Файл, а затем выберите Закрыть и вернуться в Microsoft Excel


Newer news items:

Older news items:


Задание

Создать книги MSExcelс макросами, заверив
их своей цифровой подписью. Изучить
реакцию приложенияMSExcelпри открытии книг с
подписанными и неподписанными макросами.

Технология
выполнения в среде
MS
EXCEL 2007

Задание
1.
Создать книги MS Excel,
содержащие макросы(проектыVBA)
и изучить реакциюExcelна
их открытие. Защитить один из проектов
МВА от просмотра и изменения паролем.

Создание
макросов в книгах
MS
Excel и
установка их парольной защиты

  1. Создать на диске
    свою рабочую папку.

  2. Открыть приложение
    MS
    Excel
    2007. Проверить, что на ленте панелей меню
    имеется вкладка Разработчик.
    Если вкладка Разработчик
    отсутствует, следует включить ее
    отображение: щелкнуть на кнопке Microsoft
    Office
    ,
    нажать на кнопку Параметры
    Excel,
    перейти на вкладку Основные
    и установить флажок Показывать
    вкладку Разработчик на ленте
    .
    Для выхода из окна параметров нажать
    ОК.

  3. Создать новую
    книгу MS
    Excel.
    Создать макрос, задающий границы
    выделенной области и закрашивающий ее
    в произвольный цвет:

  • Выделить произвольную
    область ячеек книги.

  • Перейти на вкладку
    Разработчик на ленте панелей и нажать
    кнопку

    Запись макроса
    .
    В окне Запись
    макроса

    ввести имя макроса Граница_и_заливка
    (без пробелов!) и нажать ОК.
    В режиме редактирования макроса на
    панели инструментов вместо кнопки
    записи макроса появится кнопка остановки
    редактирования макроса
    Остановить
    запись
    . Все
    действия, совершенные до остановки
    записи макроса, будут записаны в код
    макроса.

  • На вкладке Главная
    установите цвет заливки
    и
    тип границячеек.

  • Выполнить команду
    Остановить
    запись
    на
    вкладке Разработчик.

  1. Проверить действие
    макроса, для чего выделить другую
    область, выполнить команду Макросы
    на вкладке Разработчик,
    в окне команды выбрать макрос
    Граница_и_заливка
    и нажать кнопку Выполнить.
    У выделенной области должен измениться
    фон и появиться граница.

  2. Сохранить
    книгу с созданным макросом,
    для этого нажать на кнопку сохранения
    файла (или щелкнуть на кнопке офиса
    и
    выполнить команду Сохранить
    как
    ), в окне
    сохранения выбрать расположение книги
    (свою рабочую папку), ввести имя книги
    Книга с
    макросом 1

    и выбрать тип Книга
    Excel
    с поддержкой макросов
    ,
    а затем нажать кнопку Сохранить.

  3. Запретить выполнение
    ненадежных макросов, для чего на вкладке
    Разработчик
    выполнить команду
    Безопасность
    макросов
    ,
    в окне команды выбрать вкладку Параметры
    макросов
    ,
    установить переключатель в позицию
    Отключить
    все макросы с уведомлением

    и нажать ОК.

  4. Закрыть книгу и
    вновь открыть ее в MS
    Excel,
    проанализировав уведомление MS
    Excel
    об отключении макросов (рис.26). В строке
    уведомления щелкнуть кнопку Параметры,
    прочитать предупреждение, установить
    переключатель в положение Включить
    это содержимое

    и нажать ОК.

  5. Проверить, что
    после открытия книги макрос активен
    (выполняется).

Рис.26. Уведомление
системы безопасности об отключении
макросов

  1. Защитить просмотр
    и изменение созданного макроса паролем:

  • Перейти в режим
    редактирования макроса в проекте VBA,
    щелкнув на кнопке Visual
    Basic

    на панели инструментовРазработчик.

  • Выполнить команду
    Tools|VBAProject
    Properties,
    выбрать вкладку Protection
    (Защита),
    установить флажок параметра Lock
    project
    for
    viewing
    (Запрет
    просмотра проекта) и ввести пароль high
    в строку Password
    (пароль) и Confirm
    password
    (подтверждение пароля). Нажать ОК.

  • Сохранить изменения
    в редакторе Visual
    Basic,
    а затем закрыть Книгу
    с макросом1
    .

  1. Вновь открыть
    книгу Книга
    с макросом1
    ,
    не отключая макросы, и убедиться, что
    проект защищен:

  • Перейти в редактор
    VBA
    и попытаться просмотреть проект, для
    чего дважды щелкнуть мышью на названии
    проекта в окне ProjectVBA
    Project.

  • На экране появится
    окно ввода пароля. Ввести пароль high
    и получить доступ к просмотру проекта.

  • Закрыть книгу.

  1. Создать
    еще одну книгу MS
    Excel
    с именем Книга
    с макросом2
    ,
    содержащую макрос Шрифт,
    устанавливающий для выделенной области
    ячеек написание шрифта жирный курсив
    и размер 12. Сохранить закрыть книгу.

Задание
2.
Создать два цифровых сертификата.
Подписать проектыVBAв ранее созданных книгах MS
Excelи изучить реакциюExcelна их открытие.

Создание
цифровых сертификатов и подпись макросов
в книгах
MS
Excel

  1. Создать собственный
    цифровой сертификат:

  • В главном меню
    операционной системы Windows
    выбрать пункт Программы/Microsoft
    Office/Средства
    Microsoft
    Office/Цифровая
    подпись для проектов
    VBA
    (если данный пункт меню отсутствует,
    можно запустить приложение
    SelfCert.exe
    непосредственно с диска из папки офиса).

  • В окне приложения
    ввести свое имя и фамилию и нажать ОК.

  1. Создать
    еще один цифровой сертификат с фиктивным
    именем
    Михайла
    Ломоносов
    .

  2. Открыть в MS
    Excel
    книгу Книга
    с макросом1
    ,
    не отключая макросы.

  3. Добавить
    к проекту VBA,
    содержащему код макроса Граница_и_заливка,
    цифровую подпись:

  • На панели
    инструментов Разработчик
    в группе Код
    выполнить
    команду Visual
    Basic

    .
    В окне проектаProjectVBA
    Project
    найти код макроса (двойным щелчком мыши
    открыть код модуля в группе Modules).

  • Выполнить команду
    Tools|Digital
    Signature.
    В окне Цифровая
    подпись

    нажать кнопку Выбрать,
    выделить мышью сертификат, названный
    своим именем. Щелкнуть на кнопке Просмотр
    сертификата
    ,
    перейти на вкладку Состав
    окна Сертификат
    и просмотреть параметры сертификата
    (Алгоритм
    подписи

    название алгоритма шифрования,
    использованного для подписи, Поставщик
    – центр сертификации, выдавший
    сертификат, Действителен
    с
    , Действителен
    по
    – срок
    действия сертификата, Открытый
    ключ

    кодовая последовательность, используемая
    для проверки подписи). Перейти на вкладку
    Путь
    сертификации

    и удостовериться, что источник, выдавший
    сертификат не считается надежным –
    помечен красным крестиком. Закрыть
    окно Сертификат,
    нажав ОК.

  • В окне Выбор
    сертификата

    щелкнуть мышью на сертификате с вашим
    именем и нажать
    ОК
    .
    Проверить, что имя сертификата высветилось
    в группе Текущая
    подпись проекта
    VBA
    окна Цифровая
    подпись.
    Нажать
    ОК
    .

  • Закрыть окно
    редактора VBA.

  • Сохранить изменения
    и закрыть книгу Книга
    с макросом1
    .

  1. Занести
    цифровую подпись со своим именем в
    список надежных источников:

  • Открыть книгу
    Книга с
    макросом1
    .
    Изучить строку предупреждения.
    Просмотреть данные о текущем цифровом
    сертификате, щелкнув на ссылке Показать
    состав подписи
    ,
    а затем, для более детального просмотра
    – кнопку Просмотр
    сертификата

    в открывшемся окне Состав
    цифровой подписи
    .
    Вернуться в окно предупреждения о
    макросах, дважды нажав ОК.

  • Добавить сертификат
    в список надежных источников, установив
    флажок Доверять
    всем документам от этого издателя

    в окне предупреждения. Нажать кнопку
    ОК.

  1. Закрыть и вновь
    открыть книгу. Проверить, что уведомление
    системы безопасности не выдается,
    макросы при этом активны (выполняются).

  2. Удостовериться,
    что сертификат занесен в список надежных
    источников, открыв вкладку Надежные
    издатели

    в окне команды
    Безопасность
    макросов
    на
    ленте Разработчик.

  3. Заверить макрос
    из книги Книга
    с макросом2

    цифровой подписью Михайла
    Ломоносов
    .

  4. Установить уровень
    безопасности для макросов Отключить
    все макросы, кроме макросов с цифровой
    подписью

    (Разработчик,
    Безопасность
    макросов
    ,
    вкладка Параметры
    макросов
    ).

  5. Проверить, что
    при открытии книги с подписью из
    ненадежного источника Книга
    с макросом2

    по-прежнему выдается уведомление
    системы безопасности. Включить макросы
    при открытии и с помощью команды
    Сохранить
    как
    сохранить
    книгу под новым именем Книга
    с макросом3
    .

Задание
3.
Открыть оснастку для управления
цифровыми сертификатами, перенести
свой сертификат на другой компьютер.

Управление
цифровыми сертификатами в ОС
Windows

  1. Открыть оснастку
    Сертификаты,
    для этого:

  • Открыть командную
    строку Windows
    командой Пуск/Выполнить.
    Ввести в командной строке mmc
    и нажать ОК.
    Будет создана новая консоль Windows.

  • В окне консоли
    выполнить команду Консоль/Добавить
    или удалить оснастку
    ,
    в окне добавления оснастки щелкнуть
    кнопку Добавить
    и выбрать тип оснастки – Сертификаты.
    Нажать кнопку Добавить,
    (если вы работаете в сеансе
    пользователя-администратора будет
    открыто окно Оснастка
    диспетчера сертификатов
    ,
    в этом окне следует установить
    переключатель с позицию моей
    учетной записи пользователя

    и нажать кнопку Готово).
    Затем нажать Закрыть.
    Выйти из окна добавления оснастки,
    нажав ОК.

  • Сохранить параметры
    консоли, выполнив команду Консоль/Сохранить.
    В окне команды должна быть выбрана
    папка Администрирование,
    в строку Имя
    файла
    ввести
    имя Сертификаты
    и нажать кнопку Сохранить.

  • Закрыть окно
    консоли.

  1. Отобразить группу
    Администрирование
    в главном меню Windows:

  • Щелкнуть правой
    кнопкой мыши на кнопке Пуск
    главного меню или в любом месте панели
    задач Windows
    и выбрать команду Свойства.

  • В окне свойств
    перейти на вкладку Меню
    «Пуск»
    и
    нажать кнопку Настроить.
    Если было выбрано Классическое
    меню «Пуск»
    ,
    то установить флажок Отображать
    меню «Администрирование»

    и нажать ОК.
    Если было выбрано Меню
    «Пуск»
    , то
    перейти на вкладку Дополнительно,
    в группе Администрирование
    установить переключатель в позицию
    Отображать
    в меню «Все программы»

    и нажать ОК.
    Для выхода из окна настройки меню нажать
    ОК.

  1. В группе Программы
    главного меню Windows
    выбрать группу Администрирование
    и открыть созданную ранее оснастку
    Сертификаты.

  2. Просмотреть с
    помощью оснастки список доверенных
    издателей: в окне оснастки Сертификаты
    раскрыть группу Сертификаты
    – текущий пользователь
    ,
    выбрать группу Доверенные
    издатели
    ,
    а затем Сертификаты.
    Проверить, что в этой группе имеется
    собственный сертификат.

  3. Экспортировать
    цифровой сертификат:

  • В окне оснастки
    Сертификаты
    раскрыть группу Сертификаты
    – текущий пользователь
    ,
    выбрать группу Личные,
    а затем Сертификаты.

  • Выбрать сертификат
    Михайла
    Ломоносов
    ,
    щелкнуть на нем правой кнопкой мыши и
    выбрать команду Все
    задачи/Экспорт

    – будет открыт мастер экспорта.

  • В мастере экспорта
    сертификата нажимать кнопку Далее,
    не меняя настроек, на этапе задания
    файла экспорта с помощью кнопки Обзор
    выбрать свою рабочую папку, задать имя
    файла сертификат
    и нажать ОК,
    затем нажать Далее
    и Готово.

  • Закрыть оснастку
    Сертификаты,
    проверить, что в рабочей папке появился
    файл сертификат
    .

  1. Скопировать
    рабочую папку на другой компьютер
    (можно создать нового локального
    пользователя Windows
    и зайти в Windows
    под именем нового пользователя).

  2. На другом компьютере
    (в сеансе нового пользователя) открыть
    приложение MS
    Excel,
    установить уровень безопасности для
    макросов Отключить
    все макросы с уведомлением
    .

  3. Открыть книгу
    Книга с
    макросом3
    ,
    проанализировать уведомление системы
    безопасности; удостовериться, что
    подпись считается недействительной,
    невозможно включить макрос, невозможно
    добавить сертификат в список доверенных
    источников.

  4. Проверить, что
    при внесении изменений в код макроса,
    цифровая подпись снимается:

  • Перейти в редактор
    VBA,
    открыть код макроса.

  • Найти в коде
    макроса текст With
    Selection.Font
    , а
    затем – строку .Size
    = 12.
    Заменить размер шрифта (12) на больший
    (14).

  • В редакторе VBA
    нажать значок сохранения, проверить,
    что будет выдано уведомление об удалении
    подписи, не удалять подпись, нажав
    кнопку Отменить
    сохранение
    .

  • Закрыть книгу без
    сохранения.

  1. Импортировать
    сохраненный в файле цифровой сертификат
    для обеспечения возможности проверки
    подписи:

  • Открыть свойства
    обозревателя MS
    Internet
    Explorer
    (щелкнув правой кнопкой мыши на значке
    обозревателя и выбрав Свойства
    или выполнив команду Сервис/Свойства
    обозревателя

    в окне Internet
    Explorer).

  • В окне свойств
    обозревателя перейти на вкладку
    Содержимое
    и щелкнуть кнопку Сертификаты.

  • В окне Сертификаты
    щелкнуть кнопку Импорт,
    будет открыт мастер импорта сертификата.

  • В окне мастера
    нажать Далее,
    с помощью кнопки Обзор
    выбрать рабочую папку, в которой сохранен
    файл с сертификатом, выбрать файл
    сертификат
    и нажать Открыть.
    Нажать кнопку Далее.

  • В следующем окне
    мастера установить переключатель в
    положение Автоматически
    выбрать хранилище на основе типа
    сертификата
    ,
    нажать кнопку Далее,
    а затем кнопку Готово.

  • Изучить предупреждение
    системы о том, что готовится установка
    корневого сертификата и нажать Да.

  • Закрыть окно
    свойств обозревателя.

  1. Открыть книгу
    Книга с
    макросом3
    ,
    проанализировать уведомление системы
    безопасности; удостовериться, что после
    установки сертификата подпись считается
    действительной, можно включить макрос
    и добавить сертификат в список доверенных
    источников.

  2. Проверить, что
    по-прежнему при попытке сохранения
    изменений в макросе цифровая подпись
    удаляется, а подписать макрос заново
    с помощью сертификата Михайла
    Ломоносов

    не возможно (так как не был экспортирован
    и установлен закрытый ключ сертификата).

  3. Ответить на
    контрольные вопросы.

  4. Показать результаты
    выполнения лабораторной работы
    преподавателю, затем отключить
    отображение группы Администрирование
    в меню Windows.

Контрольные
вопросы
:

1. Почему не на всех
компьютерах с ОС Windows
XP
в главном меню имеется пункт
Администрирование?

(Для отображения
пункта Администрирование требуется
задать соответствующие настройки
главного меню Windows).

2. Почему при
переносе подписанного документа (проекта
VBA
– макроса) на другой компьютер невозможно
проверить подлинность подписи?

(Проверка подлинности
подписи осуществляется с помощью
открытого ключа соответствующего
сертификата. Поскольку сертификаты
были выданы локально, открытый ключ не
доступен другим пользователям и на
других компьютерах. Однако сертификат
можно экспортировать и ключ для проверки
подписи станет доступным после импорта
сертификата на другой компьютер).

3. Почему даже после
импорта сертификата на другом компьютере
невозможно заново подписать той же
подписью измененный документ (проект
VBA
– макрос)?

(Для подписания
требуется наличие закрытого ключа
сертификата, однако закрытый ключ не
может быть экспортирован – импортирован
для сертификатов проектов VBA.
Для сертификатов данного вида доступен
экспорт – импорт только открытого ключа
для проверки подлинности подписей).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Макросы Excel – Обзор

Макрос Excel – это действие или набор действий, которые вы можете записать, дать имя, сохранить и выполнить столько раз, сколько захотите и когда захотите. Когда вы создаете макрос, вы записываете щелчки мышью и нажатия клавиш. При запуске сохраненного макроса записанные щелчки мыши и нажатия клавиш будут выполняться в той же последовательности, в которой они записаны.

Макросы помогают сэкономить время на повторяющихся задачах, связанных с манипулированием данными и отчетами о данных, которые необходимо выполнять часто.

Макро и VBA

Вы можете записывать и запускать макросы с помощью команд Excel или из Excel VBA.

VBA расшифровывается как Visual Basic для приложений и представляет собой простой язык программирования, доступный через Excel Visual Basic Editor (VBE), который доступен на вкладке DEVELOPER на ленте. Когда вы записываете макрос, Excel генерирует код VBA. Если вы просто хотите записать макрос и запустить его, вам не нужно изучать Excel VBA. Однако, если вы хотите изменить макрос, вы можете сделать это только путем изменения кода VBA в редакторе VBA Excel.

Вы узнаете, как записывать простой макрос и запускать его с помощью команд Excel, в главе «Создание простого макроса». Вы узнаете больше о макросах и о создании и / или изменении макросов из редактора Excel VBA в последующих главах.

Личная Макро Книга

Макрос можно сохранить в той же книге, откуда вы его записали. В этом случае вы можете запустить макрос только из этой книги и, следовательно, вы должны держать его открытым. Excel дает вам альтернативный способ хранения всех ваших макросов. Это личная книга макросов, в которой вы можете сохранить свои макросы, что позволяет запускать эти макросы из любой книги.

О персональной книге макросов вы узнаете в главе «Сохранение всех ваших макросов в одной книге».

Макрос безопасности

Макросы будут храниться в виде кода VBA в Excel. Как и в случае с любым другим кодом, макрос-код также подвержен вредоносному коду, который может запускаться при открытии книги. Это угроза вашему компьютеру. Microsoft предоставила средство Macro Security, которое поможет вам защитить ваш компьютер от таких макровирусов.

Подробнее об этом вы узнаете в главе «Безопасность макросов».

Абсолютные ссылки и относительные ссылки

Во время записи макроса вы можете использовать абсолютные или относительные ссылки для ячеек, по которым вы щелкаете. Абсолютные ссылки заставляют ваш макрос работать в тех же ячейках, где вы записали макрос. С другой стороны, относительные ссылки заставляют ваш макрос работать в активной ячейке.

Вы узнаете об этом в главах – Использование абсолютных ссылок для макроса и Использование относительных ссылок для макроса.

Макрокод в VBA

Вы можете записывать и запускать макросы из Excel, даже если вы не знаете Excel VBA. Однако, если вам нужно изменить записанный макрос или создать макрос, написав код VBA, вы должны изучить Excel VBA. Вы можете обратиться к учебнику по Excel VBA в этой библиотеке учебников для этого

Тем не менее, вы должны знать, как просмотреть код макроса. Вы можете узнать, как получить доступ к редактору VBA в Excel и о различных частях редактора VBA в главе – Excel VBA.

Вы можете узнать, как просмотреть код макроса в редакторе Excel VBA, и понять код макроса в главе – Понимание кода макроса.

Назначение макросов объектам

Вы можете назначить макрос объекту, такому как фигура, графика или элемент управления. Затем вы можете запустить макрос, нажав на этот объект. Об этом вы узнаете в главе «Назначение макросов объектам».

Запуск макросов

В Excel предусмотрено несколько способов запуска макроса. Вы можете выбрать способ запуска макроса. Об этих различных возможных способах запуска макроса вы узнаете в главе «Запуск макроса».

Создание макроса с помощью редактора VBA

Если вы решили написать код макроса, вы можете изучить его в главе «Создание макроса с помощью VBA Editor». Однако обязательным условием является знание Excel VBA.

Редактирование макроса

Вы можете изменить код макроса в редакторе Excel VBA. Если вы хотите сделать обширные изменения, вы должны обладать знаниями Excel VBA. Но если вы хотите внести незначительные изменения в код или скопировать код VBA из записанного макроса в другой макрос, вы можете обратиться к главе «Редактирование макроса».

Вы можете переименовать макрос и даже удалить его. Вы узнаете об этом также в той же главе.

Формы пользователя

Форма обычно используется для сбора необходимой информации. Это само за себя сделает задачу проще. Пользовательские формы Excel, созданные из редактора Excel VBA, служат той же цели, предоставляя знакомые параметры, такие как текстовые поля, флажки, переключатели, списки, поля со списком, полосы прокрутки и т. Д. В качестве элементов управления.

Вы узнаете, как создать пользовательскую форму и как использовать различные элементы управления в главе «Пользовательские формы».

Отладка макроса кода

Иногда макрос может работать не так, как ожидалось. Возможно, вы создали макрос или используете макрос, предоставленный вам кем-то. Вы можете отлаживать код макроса так же, как вы отлаживаете любой другой код, чтобы выявить дефекты и исправить их. Вы узнаете об этом в главе «Отладка макрокода».

Настройка макроса для запуска при открытии книги

Вы можете автоматически запускать макрос при открытии книги. Вы можете сделать это либо путем создания макроса Auto_Run, либо написав код VBA для события открытия книги. Вы узнаете об этом в главе «Настройка макроса для запуска при открытии рабочей книги».

Макросы Excel – Создание

Вы можете создать макрос с помощью команд Excel, записав нажатия клавиш и щелчки мыши, задав макросу имя и указав, как сохранить макрос. Записанный таким образом макрос можно запустить с помощью команды Excel.

Предположим, вам необходимо повторно собирать определенные результаты в следующем формате:

Формат

Вместо того, чтобы создавать таблицу каждый раз, у вас может быть макрос, который сделает это за вас.

Запись макроса

Для записи макроса выполните следующие действия:

  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы в группе Макросы.
  • Выберите Record Macro из выпадающего списка.

запись

Откроется диалоговое окно « Запись макроса ».

  • Введите MyFirstMacro в поле Имя макроса.

  • Введите «Простой макрос» в поле «Описание» и нажмите «ОК».

Введите MyFirstMacro в поле Имя макроса.

Введите «Простой макрос» в поле «Описание» и нажмите «ОК».

Запись макроса

Помните, что любые нажатия клавиш и щелчки мышью, которые вы делаете, будут записаны сейчас.

  • Нажмите в ячейке B2.

  • Создать таблицу.

  • Нажмите в другой ячейке на листе.

  • Нажмите вкладку VIEW на ленте.

  • Нажмите Макросы.

  • Выберите Остановить запись из выпадающего списка.

Нажмите в ячейке B2.

Создать таблицу.

Нажмите в другой ячейке на листе.

Нажмите вкладку VIEW на ленте.

Нажмите Макросы.

Выберите Остановить запись из выпадающего списка.

Остановить запись

Ваша запись макроса завершена.

Первый шаг, который нужно щелкнуть по определенной ячейке, важен, поскольку он сообщает, где именно макрос должен начать размещать записанные шаги. Когда вы закончите запись, вы должны нажать «Остановить запись», чтобы избежать записи ненужных шагов.

Запуск макроса

Вы можете запускать записанный вами макрос сколько угодно раз. Чтобы запустить макрос, выполните следующие действия:

  • Нажмите на новый лист.

Обратите внимание на активную ячейку. В нашем случае это А1.

  • Нажмите вкладку VIEW на ленте.

  • Нажмите Макросы .

  • Выберите View Macros из выпадающего списка.

Нажмите вкладку VIEW на ленте.

Нажмите Макросы .

Выберите View Macros из выпадающего списка.

Посмотреть

Откроется диалоговое окно «Макрос».

Диалоговое окно Macro

В списке макросов появляется только записанный вами макрос.

  • Щелкните имя макроса – MyFirstMacro в диалоговом окне «Макрос». Будет отображено описание, введенное вами во время записи макроса. Описание макроса позволяет определить, для какой цели вы записали макрос.

  • Нажмите кнопку «Выполнить». Та же самая таблица, которую вы создали во время записи макроса, появится за доли секунды.

Щелкните имя макроса – MyFirstMacro в диалоговом окне «Макрос». Будет отображено описание, введенное вами во время записи макроса. Описание макроса позволяет определить, для какой цели вы записали макрос.

Нажмите кнопку «Выполнить». Та же самая таблица, которую вы создали во время записи макроса, появится за доли секунды.

Список макросов

Вы обнаружили волшебную палочку, которую Excel предоставляет вам, чтобы сэкономить время на повседневных задачах. Вы увидите следующее –

  • Хотя активной ячейкой перед запуском макроса была A1, таблица помещается в ячейку B2, как вы записали.

  • Кроме того, активной ячейкой стала E2, так как вы щелкнули по этой ячейке, прежде чем прекратили запись.

Хотя активной ячейкой перед запуском макроса была A1, таблица помещается в ячейку B2, как вы записали.

Кроме того, активной ячейкой стала E2, так как вы щелкнули по этой ячейке, прежде чем прекратили запись.

Вы можете запустить макрос в нескольких листах с разными активными ячейками перед запуском макроса и соблюдать те же условия, что и приведенные выше. Просто запомните это, и позже в этом уроке вы поймете, почему это произошло.

Вы также можете иметь макро запись, которая помещает ваши записанные шаги в активную ячейку. Вы узнаете, как это сделать, по мере продвижения в учебнике.

Хранение макроса

Вы можете задаться вопросом, как сохранить созданные макросы. В этом контексте вам нужно знать –

  • Хранение макроса
  • Сохранение файла с макросами

Как и при создании макроса, вы можете выбрать, где хранить этот конкретный макрос. Вы можете сделать это в диалоговом окне « Запись макроса ».

Установите флажок – Хранить макрос в . Доступны следующие три варианта:

  • Это рабочая тетрадь.
  • Новая рабочая тетрадь.
  • Личная Макро Книга

Магазин Макро

Эта рабочая тетрадь

Это опция по умолчанию. Макрос будет сохранен в вашей текущей книге, из которой вы его создали.

Новая рабочая книга

Эта опция, хотя и доступна, не рекомендуется. Вы будете просить Excel сохранить макрос в другой новой книге, и в большинстве случаев это не нужно.

Личная Макро Книга

Если вы создаете несколько макросов, которые вы используете в своих книгах, Personal Macro Workbook предоставляет вам возможность хранить все макросы в одном месте. Вы узнаете больше об этой опции в следующей главе.

Сохранение файла с макросами

Если вы выбрали эту книгу в качестве опции для хранения макроса, вам нужно будет сохранить вашу книгу вместе с макросом.

Попробуйте сохранить рабочую книгу. По умолчанию вы просите Excel сохранить книгу в виде файла .xls. В Excel отображается сообщение о том, что проект VB с функцией Excel нельзя сохранить в книге без макросов, как показано ниже.

Эта рабочая тетрадь

Примечание. Если вы нажмете кнопку «Да», Excel сохранит вашу книгу как файл без макросов .xls, а макрос, сохраненный с помощью параметра «Эта книга», не будет сохранен. Чтобы избежать этого, Excel предоставляет вам возможность сохранить рабочую книгу как макроподключенную книгу с расширением .xlsm.

  • Нажмите Нет в окне с предупреждением.
  • Выберите Excel Macro-Enabled Workbook (* .xlsm) в типе Сохранить как.
  • Нажмите Сохранить.

Сохранить файл

Вы узнаете больше об этом в последующих главах этого урока.

Макросы Excel – Макросы в одной книге

Excel предоставляет вам возможность хранить все ваши макросы в одной книге. Рабочая книга называется «Персональная макрокоманда» – Personal.xlsb. Это скрытая рабочая книга, хранящаяся на вашем компьютере, которая открывается каждый раз, когда вы открываете Excel. Это позволяет вам запускать макросы из любой книги. На каждом компьютере будет отдельная книга личных макросов, и вы не сможете поделиться ею между компьютерами. Вы можете просматривать и запускать макросы в своей личной книге макросов из любой книги на вашем компьютере.

Сохранение макросов в личной книге макросов

Вы можете сохранить макросы в своей Персональной рабочей тетради, выбрав ее в качестве опции сохранения при записи макросов.

Выберите «Персональная книга макросов» в раскрывающемся списке под категорией « Хранить макрос» .

Персональный макрос

  • Запишите свой второй макрос.
  • Укажите детали макроса в диалоговом окне «Запись макроса», как показано ниже.
  • Нажмите ОК.

Второй макрос

Ваша запись начинается. Создайте таблицу, как показано ниже.

Запись начинается

  • Прекратить запись.

  • Нажмите вкладку VIEW на ленте.

  • Нажмите Макросы.

  • Выберите View Macros из выпадающего списка. Откроется диалоговое окно «Макрос».

Прекратить запись.

Нажмите вкладку VIEW на ленте.

Нажмите Макросы.

Выберите View Macros из выпадающего списка. Откроется диалоговое окно «Макрос».

Посмотреть макросы

Имя макроса отображается с префиксом PERSONAL.XLSB! указывает на то, что макрос находится в личной книге макросов.

Сохраните свою рабочую книгу. Он будет сохранен как файл .xls, так как макрос отсутствует в вашей книге и закроет Excel.

Вы получите следующее сообщение о сохранении изменений в Персональной книге макросов:

Сохранить

Нажмите кнопку Сохранить. Ваш макрос сохраняется в файле Personal.xlsb на вашем компьютере.

Скрытие / отображение персональной макрокоманды

Персональная макрокоманда по умолчанию будет скрыта. Когда вы запускаете Excel, загружается личная книга макросов, но вы ее не видите, потому что она скрыта. Вы можете показать это следующим образом –

  • Нажмите вкладку VIEW на ленте.

  • Нажмите Показать в группе окон.

Нажмите вкладку VIEW на ленте.

Нажмите Показать в группе окон.

Посмотреть вкладку

Откроется диалоговое окно «Показать».

Unhide

PERSONAL.XLSB появится в поле «Показать книгу» и нажмите «ОК».

Персональный XLSB

Теперь вы можете просматривать макросы, сохраненные в личной книге макросов.

Чтобы скрыть личную книгу макросов, выполните следующие действия:

  • Нажмите на личную книгу макросов.
  • Нажмите вкладку VIEW на ленте.
  • Нажмите Скрыть на ленте.

Запуск макросов, сохраненных в личной книге макросов

Вы можете запускать макросы, сохраненные в личной книге макросов, из любой книги. Для запуска макросов не имеет значения, является ли личная книга макросов скрытой или скрытой.

  • Нажмите «Просмотреть макросы».
  • Выберите имя макроса из списка макросов.
  • Нажмите кнопку «Выполнить». Макрос будет работать.

Добавление / удаление макросов в личной книге макросов

Вы можете добавить больше макросов в личную книгу макросов, выбрав ее для опции «Хранить макрос» во время записи макросов, как вы видели ранее.

Вы можете удалить макрос в личной книге макросов следующим образом:

  • Убедитесь, что личная рабочая тетрадь с макросами не скрыта.
  • Щелкните имя макроса в диалоговом окне «Просмотр макросов».
  • Нажмите кнопку Удалить.

Если личная книга макросов скрыта, вы получите сообщение «Невозможно редактировать макрос в скрытой книге».

Скрытая рабочая книга

Отобразите личную книгу макросов и удалите выбранный макрос.

Макрос не появится в списке макросов. Однако, когда вы создаете новый макрос и сохраняете его в своей личной книге или удаляете все содержащиеся в нем макросы, вам будет предложено сохранить личную книгу так же, как в случае, когда вы сохранили ее в первый раз.

Макросы Excel – Безопасность

Макросы, которые вы создаете в Excel, будут написаны на языке программирования VBA (Visual Basic для приложений). Вы узнаете о макросе Excel в следующих главах. Как вы знаете, когда есть исполняемый код, существует угроза вирусов. Макросы также подвержены вирусам.

Что такое макро-вирусы?

Excel VBA, в котором написаны макросы, имеет доступ к большинству системных вызовов Windows и выполняется автоматически при открытии книг. Следовательно, существует потенциальная угроза существования вируса, написанного в виде макроса и скрытого в Excel, который выполняется при открытии книги. Поэтому макросы Excel могут быть очень опасны для вашего компьютера во многих отношениях. Однако Microsoft предприняла соответствующие меры для защиты книг от макровирусов.

Microsoft ввела защиту макросов, чтобы вы могли определить, каким макросам вы можете доверять, а каким – нет.

Книги Excel с поддержкой макросов

Самая важная функция безопасности макросов Excel – расширения файлов.

Книги Excel будут сохранены с расширением .xlsx по умолчанию. Вы всегда можете доверять книгам с расширением .xlsx, так как они не способны хранить макрос и не несут никакой угрозы.

Книги Excel с макросами сохраняются с расширением .xlsm. Они называются книгами Excel с поддержкой макросов. Прежде чем открывать такие книги, убедитесь, что содержащиеся в них макросы не являются вредоносными. Для этого вы должны убедиться, что можете доверять источнику книг этого типа.

Способы доверять книге с поддержкой макросов

Excel предоставляет три способа доверять книге с поддержкой макросов.

  • Помещение книг с поддержкой макросов в надежную папку

  • Проверка, если макрос имеет цифровую подпись

  • Включение предупреждений безопасности перед открытием книг с поддержкой макросов

Помещение книг с поддержкой макросов в надежную папку

Проверка, если макрос имеет цифровую подпись

Включение предупреждений безопасности перед открытием книг с поддержкой макросов

Помещение книг с поддержкой макросов в надежную папку

Это самый простой и лучший способ управления макробезопасностью. Excel позволяет назначить папку в качестве надежного расположения. Поместите все книги с поддержкой макросов в эту доверенную папку. Вы можете открыть книги с поддержкой макросов, сохраненные в этом месте без предупреждений и ограничений.

Проверка, если макрос имеет цифровую подпись

Цифровые подписи подтверждают личность автора. Вы можете настроить Excel на запуск макросов с цифровой подписью от доверенных лиц без предупреждений или ограничений. Excel также предупредит получателя, если он был изменен с тех пор, как автор подписал его.

Включение предупреждений безопасности перед открытием книг с поддержкой макросов

Когда вы открываете книгу, Excel предупреждает вас о том, что книга содержит макросы, и спрашивает, хотите ли вы включить их. Вы можете нажать кнопку « Включить содержимое» , если источник рабочей книги является надежным.

Безопасность

Вы можете установить любой из этих трех параметров в центре управления безопасностью в параметрах Excel.

Если вы работаете в организации, системный администратор мог изменить настройки по умолчанию, чтобы никто не мог их изменить. Microsoft рекомендует не изменять параметры безопасности в центре управления безопасностью, поскольку последствия могут быть потеря данных, кража данных или нарушения безопасности на вашем компьютере или в сети.

Тем не менее, вы можете узнать настройки безопасности макросов в следующих разделах и проверить, если они должны быть изменены. Вы должны использовать свой собственный инстинкт, чтобы выбрать любой из этих вариантов на основе контекста и ваших знаний о происхождении файла.

Настройки безопасности макросов в центре управления безопасностью

Настройки макроса находятся в центре управления безопасностью в настройках Excel. Чтобы получить доступ к центру доверия, выполните следующие действия:

  • Нажмите вкладку ФАЙЛ на ленте.

  • Нажмите Опции. Откроется диалоговое окно «Параметры Excel».

  • Нажмите Центр управления безопасностью на левой панели.

  • Нажмите кнопку Настройки центра управления безопасностью в Центре управления безопасностью Microsoft Excel.

Нажмите вкладку ФАЙЛ на ленте.

Нажмите Опции. Откроется диалоговое окно «Параметры Excel».

Нажмите Центр управления безопасностью на левой панели.

Нажмите кнопку Настройки центра управления безопасностью в Центре управления безопасностью Microsoft Excel.

Настройки макроса

Откроется диалоговое окно « Центр управления безопасностью ».

Трастовый центр

Вы увидите различные параметры, доступные в Центре управления безопасностью Excel на левой панели. Вы узнаете об опциях, связанных с макросами Excel, в следующих разделах.

Настройки макроса

Настройки макроса находятся в центре управления безопасностью.

Настройки макроса

В настройках макроса доступны четыре параметра.

  • Отключить все макросы без уведомления. Если выбран этот параметр, макросы и предупреждения безопасности о макросах отключаются.

  • Отключить все макросы с уведомлением – макросы отключены, но при наличии макросов появляются предупреждения системы безопасности. Вы можете включить макросы в каждом конкретном случае.

  • Отключите все макросы, кроме макросов с цифровой подписью – макросы отключены, но при наличии макросов появляются предупреждения системы безопасности. Однако, если макрос подписан доверенным издателем с цифровой подписью, макрос запускается, если вы доверяете издателю. Если вы не доверяете издателю, вы получите уведомление о включении подписанного макроса и доверии издателю.

  • Включить все макросы (не рекомендуется, восприимчивы к макровирусам) – если выбрана эта опция, запускаются все макросы. Этот параметр делает ваш компьютер уязвимым для потенциально вредоносного кода.

Отключить все макросы без уведомления. Если выбран этот параметр, макросы и предупреждения безопасности о макросах отключаются.

Отключить все макросы с уведомлением – макросы отключены, но при наличии макросов появляются предупреждения системы безопасности. Вы можете включить макросы в каждом конкретном случае.

Отключите все макросы, кроме макросов с цифровой подписью – макросы отключены, но при наличии макросов появляются предупреждения системы безопасности. Однако, если макрос подписан доверенным издателем с цифровой подписью, макрос запускается, если вы доверяете издателю. Если вы не доверяете издателю, вы получите уведомление о включении подписанного макроса и доверии издателю.

Включить все макросы (не рекомендуется, восприимчивы к макровирусам) – если выбрана эта опция, запускаются все макросы. Этот параметр делает ваш компьютер уязвимым для потенциально вредоносного кода.

У вас есть дополнительная опция безопасности в Настройках макроса разработчика с флажком.

  • Доверительный доступ к объектной модели проекта VBA.

    • Этот параметр обеспечивает программный доступ к объектной модели Visual Basic для приложений (VBA) из клиента автоматизации.

    • Этот параметр безопасности предназначен для кода, написанного для автоматизации программы Office и управления средой VBA и объектной моделью.

    • Это настройка для каждого пользователя и приложения, которая по умолчанию запрещает доступ, препятствуя несанкционированным программам создавать вредоносный самовоспроизводящийся код.

    • Чтобы клиенты автоматизации могли обращаться к объектной модели VBA, пользователь, выполняющий код, должен предоставить доступ. Чтобы включить доступ, установите флажок.

Доверительный доступ к объектной модели проекта VBA.

Этот параметр обеспечивает программный доступ к объектной модели Visual Basic для приложений (VBA) из клиента автоматизации.

Этот параметр безопасности предназначен для кода, написанного для автоматизации программы Office и управления средой VBA и объектной моделью.

Это настройка для каждого пользователя и приложения, которая по умолчанию запрещает доступ, препятствуя несанкционированным программам создавать вредоносный самовоспроизводящийся код.

Чтобы клиенты автоматизации могли обращаться к объектной модели VBA, пользователь, выполняющий код, должен предоставить доступ. Чтобы включить доступ, установите флажок.

Определение надежного местоположения

Если вы считаете, что книга с макросами получена из надежного источника, лучше переместить файл в надежное расположение, указанное в Excel, вместо того, чтобы изменить настройки Центра управления безопасностью по умолчанию на менее безопасный параметр безопасности макросов.

Вы можете найти параметры надежной папки в центре управления безопасностью.

Нажмите Надежные расположения в диалоговом окне центра управления безопасностью. Надежные расположения, установленные Microsoft Office, отображаются с правой стороны.

Надежное расположение

Вы можете добавлять новые местоположения, удалять существующие местоположения и изменять существующие местоположения. Обнаруженные надежные расположения будут рассматриваться офисом Microsoft как надежные для открытия файлов. Однако, если вы добавите или измените местоположение, убедитесь, что оно безопасно.

Вы также можете найти варианты, которые офис не рекомендует, например, места в Интернете.

Макросы с цифровой подписью из надежных источников

Microsoft предоставляет возможность размещения макросов с цифровой подписью. Однако, даже если макрос имеет цифровую подпись, вы должны убедиться, что он принадлежит доверенному издателю.

Вы найдете доверенных издателей в центре доверия.

  • Нажмите Надежные издатели в диалоговом окне центра управления безопасностью. Справа появится список сертификатов с подробной информацией – выдано, выдано и срок действия.

  • Выберите сертификат и нажмите «Просмотр».

Нажмите Надежные издатели в диалоговом окне центра управления безопасностью. Справа появится список сертификатов с подробной информацией – выдано, выдано и срок действия.

Выберите сертификат и нажмите «Просмотр».

Доверенные издатели

Информация о сертификате отображается.

Как вы узнали ранее в этой главе, вы можете установить опцию для запуска макроса с цифровой подписью, только если вы доверяете издателю. Если вы не доверяете издателю, вы получите уведомление о включении подписанного макроса и доверии издателю.

Использование предупреждающих сообщений

Панель сообщений отображает предупреждение системы безопасности, когда в открываемом файле есть макросы. Желтая панель сообщений со значком щита предупреждает вас, что макросы отключены.

Предупреждающие сообщения

Если вы знаете, что макрос или макросы получены из надежного источника, вы можете нажать кнопку «Включить содержимое» на панели сообщений, чтобы включить макросы.

Вы можете отключить опцию «Панель сообщений», если вы не хотите получать уведомления о безопасности. С другой стороны, вы можете включить опцию панели сообщений для повышения безопасности.

Включение / отключение предупреждений безопасности на панели сообщений

Вы можете включить / отключить предупреждения безопасности с помощью панели сообщений следующим образом:

  • Нажмите вкладку ФАЙЛ на ленте.
  • Нажмите Опции. Откроется диалоговое окно «Параметры Excel».
  • Нажмите Траст-центр.
  • Нажмите кнопку Настройки центра управления безопасностью.
  • Нажмите Панель сообщений.

Появятся настройки панели сообщений для всех приложений Office.

Панель сообщений

В разделе « Отображение панели сообщений» есть два варианта.

Вариант 1 – Показывать панель сообщений во всех приложениях, когда активный контент, такой как макросы, заблокирован.

  • Это опция по умолчанию. Панель сообщений появляется, когда потенциально небезопасный контент отключен.

  • Если вы выбрали – Отключить все макросы без уведомления в настройках макросов центра управления безопасностью , этот параметр не выбран, и панель сообщений не отображается.

Это опция по умолчанию. Панель сообщений появляется, когда потенциально небезопасный контент отключен.

Если вы выбрали – Отключить все макросы без уведомления в настройках макросов центра управления безопасностью , этот параметр не выбран, и панель сообщений не отображается.

Показ сообщения

Вариант 2 – Никогда не показывать информацию о заблокированном контенте.

Если этот параметр выбран, он отключает панель сообщений, и никакие предупреждения о проблемах безопасности не появляются, независимо от каких-либо параметров безопасности в центре управления безопасностью.

блокированный

Макросы Excel – абсолютные ссылки

Макросы Excel могут быть записаны с абсолютными или относительными ссылками. Макрос, записанный с абсолютными ссылками, помещает записанные шаги точно в ячейки, где он был записан, независимо от активной ячейки. С другой стороны, макрос, записанный с относительными ссылками, может выполнять записанные задачи в разных частях рабочего листа.

Вы узнаете об абсолютных ссылках на макрос в этой главе. Вы узнаете об относительных ссылках в следующей главе.

Предположим, что вы должны подавать отчет о работе вашей команды в конце каждого дня в следующем формате:

Абсолютная Ссылка

Теперь отчет должен быть помещен в ячейку B2 и должен быть в заданном формате.

Образец, заполненный в отчете, будет таким, как показано ниже –

Образец

За исключением данных в следующих ячейках, информация является постоянной для каждого отчета, который вы генерируете для проекта.

  • C3 – Отчет за дату.
  • C13 – Количество задач, выполненных сегодня.
  • C14 – Общее количество выполненных задач.
  • C15 -% работа выполнена.

Из них также в C3 (Отчет за дату) вы можете поместить функцию Excel = TODAY (), которая помещает дату вашего отчета без вашего вмешательства. Кроме того, в ячейке C15 вы можете использовать формулу C14 / C12 и отформатировать ячейку C15 в процентах, чтобы рассчитать% Work Complete для вас в Excel.

Это оставляет вам только две ячейки – C13 и C14, которые вы должны заполнять каждый день. Следовательно, было бы идеально иметь информацию для остальных ячеек каждый раз, когда вам нужно создать отчет. Это экономит ваше время, и вы можете выполнять обычные действия по составлению отчетов всего за несколько минут.

Теперь предположим, что вы должны отправить такие отчеты для трех проектов. Вы можете вообразить время, которое вы можете сэкономить и заняться более сложной работой в течение дня и, конечно, получить похвалы от вашего руководства.

Этого можно добиться, записав макрос для каждого проекта и выполняя их ежедневно, чтобы создать необходимые отчеты всего за несколько минут. Однако каждый раз, когда вы запускаете макрос, отчет должен появляться на рабочем листе, как указано выше, независимо от активной ячейки. Для этого вы должны использовать абсолютные ссылки.

Обеспечение Абсолютных Ссылок

Чтобы записать макрос с абсолютными ссылками, вы должны убедиться, что макрос записывается, начиная с ячейки, где должны начинаться шаги. Это означает, что в случае примера, приведенного в предыдущем разделе, вам нужно сделать следующее:

  • Начните запись макроса.
  • Создайте новый лист.
  • Щелкните в любой ячейке, кроме B2, на новом листе.
  • Нажмите в ячейке B2.
  • Продолжить запись макроса.

Это создаст новый лист для каждого нового отчета и будет помещать формат отчета в ячейку B2 при каждом запуске макроса.

Примечание . Первые три шага, приведенные выше, очень важны.

  • Если вы не создаете новый рабочий лист, при запуске макроса он помещает все, что вы записали, на один и тот же рабочий лист в одно и то же место. Это не то, что вы хотите. Вы должны иметь каждый отчет на отдельном листе.

  • Если вы не нажмете другую ячейку в начале записи, даже если активная ячейка – B2, Excel поместит записанные шаги в активную ячейку. Когда вы запустите макрос, он поместит записанный формат отчета в любую часть рабочего листа на основе активной ячейки. Явно щелкая в ячейке, отличной от B2, а затем в ячейке B2, вы говорите рекордеру всегда размещать ваши макроэтапы в ячейке B2.

Если вы не создаете новый рабочий лист, при запуске макроса он помещает все, что вы записали, на один и тот же рабочий лист в одно и то же место. Это не то, что вы хотите. Вы должны иметь каждый отчет на отдельном листе.

Если вы не нажмете другую ячейку в начале записи, даже если активная ячейка – B2, Excel поместит записанные шаги в активную ячейку. Когда вы запустите макрос, он поместит записанный формат отчета в любую часть рабочего листа на основе активной ячейки. Явно щелкая в ячейке, отличной от B2, а затем в ячейке B2, вы говорите рекордеру всегда размещать ваши макроэтапы в ячейке B2.

Запись макроса

Вы можете начать запись макроса с помощью команды « Запись макроса» на ленте на вкладке «ПРОСМОТР» → «Макросы». Вы также можете нажать кнопку « Начать запись макроса» в левой части панели задач Excel.

Запись Макроса

  • Начните запись макроса. Откроется диалоговое окно « Запись макроса ».

  • Дайте осмысленное имя, чтобы идентифицировать макрос как отчет о конкретном проекте.

  • Выберите «Эта книга» в разделе « Макрос магазина» , поскольку отчеты будут создаваться только из этой конкретной книги.

  • Дайте описание вашему макросу и нажмите ОК.

Начните запись макроса. Откроется диалоговое окно « Запись макроса ».

Дайте осмысленное имя, чтобы идентифицировать макрос как отчет о конкретном проекте.

Выберите «Эта книга» в разделе « Макрос магазина» , поскольку отчеты будут создаваться только из этой конкретной книги.

Дайте описание вашему макросу и нажмите ОК.

Описание

Ваш макрос начинает запись.

  • Создайте новый лист. Это гарантирует, что ваш новый отчет будет на новом листе.

  • Щелкните в любой ячейке, кроме B2, на новом листе.

  • Нажмите в ячейке B2. Это гарантирует, что макрос всегда помещает ваши записанные шаги в B2.

  • Создайте формат для отчета.

  • Заполните статическую информацию для отчета по проекту.

  • Поместите = СЕГОДНЯ () в C3 и = C14 / C12 в ячейку C15.

  • Отформатируйте ячейки с датами.

Создайте новый лист. Это гарантирует, что ваш новый отчет будет на новом листе.

Щелкните в любой ячейке, кроме B2, на новом листе.

Нажмите в ячейке B2. Это гарантирует, что макрос всегда помещает ваши записанные шаги в B2.

Создайте формат для отчета.

Заполните статическую информацию для отчета по проекту.

Поместите = СЕГОДНЯ () в C3 и = C14 / C12 в ячейку C15.

Отформатируйте ячейки с датами.

Прекратите запись макроса.

Остановить запись

Остановить запись макроса можно либо с помощью команды « Остановить запись» на ленте на вкладке «ПРОСМОТР» → «Макросы», либо нажав кнопку «Остановить запись макроса», расположенную в левой части панели задач Excel.

Taskbar

Макрос вашего отчета о проекте готов. Сохраните книгу как макрокоманду (с расширением .xlsm).

Запуск макроса

Вы можете создать любое количество отчетов за несколько секунд, просто запустив макрос.

  • Нажмите кнопку VIEW на ленте.
  • Нажмите Макросы.
  • Выберите View Macros из выпадающего списка. Откроется диалоговое окно «Макрос».
  • Щелкните макрос Report_ProjectXYZ.
  • Нажмите кнопку «Выполнить».

В вашей книге будет создан новый лист, а в ячейке B2 будет создан трафарет отчета.

Макросы Excel – Относительные ссылки

Макросы относительной ссылки записывают смещение от активной ячейки. Такие макросы будут полезны, если вам придется повторять шаги в разных местах на листе.

Предположим, вам необходимо проанализировать данные избирателей, собранных в 280 избирательных округах. Для каждого избирательного округа собраны следующие данные:

  • Название избирательного округа.
  • Общая численность населения в избирательном округе.
  • Количество избирателей в избирательном округе.
  • Количество избирателей мужского пола, и
  • Количество женщин-избирателей.

Данные предоставляются вам на листе, как указано ниже.

Относительные ссылки

Невозможно проанализировать данные в вышеуказанном формате. Поэтому расположите данные в таблице, как показано ниже.

Таблица

Если вы пытаетесь расположить данные в вышеуказанном формате –

  • Сбор данных из 280 избирательных округов занимает значительное время

  • Это может быть подвержено ошибкам

  • Это становится мирской задачей, не позволяющей вам сосредоточиться на технических вещах

Сбор данных из 280 избирательных округов занимает значительное время

Это может быть подвержено ошибкам

Это становится мирской задачей, не позволяющей вам сосредоточиться на технических вещах

Решение состоит в том, чтобы записать макрос, чтобы вы могли выполнить задачу не более, чем за несколько секунд. Макрос должен использовать относительные ссылки, так как вы будете перемещаться по строкам во время упорядочивания данных.

Использование относительных ссылок

Чтобы сообщить макрос-рекордеру, что он должен использовать относительные ссылки, сделайте следующее:

  • Нажмите вкладку VIEW на ленте.

  • Нажмите Макросы .

  • Нажмите « Использовать относительные ссылки» .

Нажмите вкладку VIEW на ленте.

Нажмите Макросы .

Нажмите « Использовать относительные ссылки» .

Относительная ссылка

Подготовка формата данных

Первым шагом в организации приведенных выше данных является определение формата данных в таблице с заголовками.

Создайте строку заголовков, как показано ниже.

Подготовка

Запись макроса

Запишите макрос следующим образом –

  • Нажмите Запись макроса.

  • Дайте осмысленное имя, скажем, DataArrange макросу.

  • Тип = строка () – 3 в ячейке B4. Это потому, что номер S. является текущим номером строки – 3 строки над ним.

  • Разрежьте ячейки B5, B6, B7, B8 и B9 и вставьте их в ячейки C4-C8 соответственно.

  • Теперь нажмите на ячейку B5. Ваша таблица выглядит так, как показано ниже.

Нажмите Запись макроса.

Дайте осмысленное имя, скажем, DataArrange макросу.

Тип = строка () – 3 в ячейке B4. Это потому, что номер S. является текущим номером строки – 3 строки над ним.

Разрежьте ячейки B5, B6, B7, B8 и B9 и вставьте их в ячейки C4-C8 соответственно.

Теперь нажмите на ячейку B5. Ваша таблица выглядит так, как показано ниже.

Запись макроса

Первый набор данных расположен в первой строке таблицы. Удалите строки B6 – B11 и щелкните в ячейке B5.

Первый набор данных

Вы можете видеть, что активная ячейка B5 и следующий набор данных будет размещен здесь.

Прекратите запись макроса. Ваш макрос для размещения данных готов.

Запуск макроса

Вам необходимо многократно запускать макрос, чтобы завершить размещение данных в таблице, как указано ниже.

Активная ячейка B5. Запустите макрос. Второй набор данных будет размещен во второй строке таблицы, а активной ячейкой будет B6.

Макрос Бег

Запустите макрос снова. Третий набор данных будет размещен в третьей строке таблицы, и активной ячейкой станет B7.

Запустить макрос

Каждый раз, когда вы запускаете макрос, активная ячейка продвигается к следующей строке, облегчая повторение записанных шагов в соответствующих позициях. Это возможно из-за относительных ссылок в макросе.

Запускайте макрос, пока все 280 наборов данных не будут объединены в 280 строк таблицы. Этот процесс занимает несколько секунд, и, поскольку шаги автоматизированы, все упражнение не содержит ошибок.

Макросы Excel – VBA

Excel хранит макросы в виде кода Excel VBA (Visual Basic для приложений). После записи макроса вы можете просмотреть сгенерированный код, изменить его, скопировать его часть и т. Д. Вы даже можете написать макрос самостоятельно, если вам удобно программировать на VBA.

Вы узнаете, как создать макрос, написав код VBA, в главе «Создание макроса с помощью редактора VBA». Вы узнаете, как изменить макрос, отредактировав код VBA в главе «Редактирование макроса». В этой главе вы узнаете о возможностях Excel VBA.

Вкладка «Разработчик» на ленте

Вы можете получить доступ к коду макроса в VBA на вкладке Разработчик на ленте.

разработчик

Если вы не найдете вкладку «Разработчик» на ленте, вам нужно добавить ее следующим образом:

  • Щелкните правой кнопкой мыши на ленте.

  • Выберите « Настроить ленту» в раскрывающемся списке.

Щелкните правой кнопкой мыши на ленте.

Выберите « Настроить ленту» в раскрывающемся списке.

Настроить ленту

Откроется диалоговое окно « Параметры Excel ».

  • Выберите « Основные вкладки» в раскрывающемся списке « Настройка ленты» .

  • Установите флажок «Разработчик» в списке «Основные вкладки» и нажмите «ОК». Появится вкладка разработчика.

Выберите « Основные вкладки» в раскрывающемся списке « Настройка ленты» .

Установите флажок «Разработчик» в списке «Основные вкладки» и нажмите «ОК». Появится вкладка разработчика.

Параметры Excel

Команды разработчика для макросов

Вам нужно знать команды для макросов на вкладке разработчика.

Нажмите вкладку РАЗРАБОТЧИК на ленте. Следующие команды доступны в группе Код –

  • Visual Basic
  • макрос
  • Запись макроса
  • Используйте относительные ссылки
  • Макрос безопасности

управления

Команда Visual Basic используется для открытия редактора VBA в Excel, а команда Macros – для просмотра, запуска и удаления макросов.

Вы уже изучили команды, отличные от VBA Editor, в предыдущих главах.

VBA Editor

VBA Editor или VBE – это платформа для разработчиков VBA в Excel.

Откройте книгу – MyFirstMacro.xlsm, которую вы сохранили ранее в главе «Создание простого макроса» в этом учебном пособии.

Вы можете открыть VBE любым из двух способов –

Вариант 1. Нажмите Visual Basic в группе «Код» на вкладке «Разработчик» на ленте.

VBA Editor

Вариант 2. Нажмите «Редактировать» в диалоговом окне «Макрос», которое появляется при нажатии вкладки «ПРОСМОТР» → «Макросы» → «Просмотр макросов».

Посмотреть макрос

VBE появляется в новом окне.

VBE

Имя вашего учебника с поддержкой макросов Excel отображается с префиксом Microsoft Visual Basic для приложений.

Вы найдете следующее в VBE –

  • Проводник проектов.
  • Свойства.
  • Модуль окна с кодом.

Проводник проектов

В Project Explorer вы найдете имена проектов VBA. Под проектом вы найдете имена листов и модулей. При щелчке по имени модуля соответствующий код появляется в правой части окна.

Окно свойств

Свойства являются параметрами для объектов VBA. Когда у вас есть объект, такой как командная кнопка, его свойства появятся в окне свойств.

Окно модуля с кодом

Код макроса будет храниться в модуле в VBA. Когда вы выбираете макрос и нажимаете «Редактировать», код макроса появляется в соответствующем окне модуля.

Макросы Excel – Понимание кодов

Когда вы записываете макрос, Excel сохраняет его как код VBA. Вы можете просмотреть этот код в редакторе VBA. Вы можете понять код и изменить его, если у вас есть значительные знания Excel VBA. Вы можете обратиться к учебнику по Excel VBA в этой библиотеке учебников, чтобы понять язык.

Однако вы все равно можете просмотреть код макроса в редакторе Excel VBA и сопоставить его с шагами, которые вы записали в макросе. Вы узнаете, как просматривать код и понимать его для первого макроса, который вы создали в этом руководстве – MyFirstMacro.

Просмотр макрокода в VBA Editor

Чтобы просмотреть код макроса, выполните следующие действия:

  • Откройте книгу, в которой вы сохранили макрос.
  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы.
  • Выберите View Macros из выпадающего списка.

Просмотр

Откроется диалоговое окно «Макрос».

  • Нажмите MyFirstMacro в списке макросов.
  • Нажмите кнопку Изменить.

редактировать

Откроется редактор VBA и появится код макроса MyFirstMacro.

макрос

Понимание записанных действий как частей кода

Вы можете просмотреть код макроса и сопоставить их с вашими записанными шагами.

  • Начните читать код.
  • Сопоставьте код с записанными шагами.

понимание

Прокрутите код, чтобы увидеть больше кода. Кроме того, вы можете увеличить окно кода.

Увеличить код

Обратите внимание, что код прост. Если вы изучите Excel VBA, вы можете создать макросы, написав код в редакторе VBA.

Вы узнаете, как написать код VBA для создания макроса, в главе «Создание макроса с помощью редактора VBA».

Макросы Excel – Назначение макросов объектам

Предположим, вы создали макрос, который нужно выполнить несколько раз. Например, макросы, которые вы создали для абсолютных ссылок и относительных ссылок. Тогда вам будет легко, если вы сможете запустить макрос с помощью щелчка мыши. Вы можете сделать это, назначив макрос объекту, такому как фигура, графика или элемент управления.

В этой главе вы узнаете, как включить объект в рабочую книгу и назначить ему макрос.

Вспомните макрос, который вы создали, используя относительные ссылки. Макрос организует данные, представленные в одном столбце, в таблицу, чтобы облегчить анализ данных.

Отзыв

Назначение макроса для фигуры

Вы можете вставить фигуру в свой рабочий лист в значимой форме с не требующим пояснений текстом, который при нажатии запускает назначенный ей макрос.

  • Нажмите вкладку INSERT на ленте.

  • Нажмите « Фигуры» в группе «Иллюстрации».

  • Выберите любую из готовых фигур, которые появляются в раскрывающемся списке. Например, форма Блок-схема – Подготовка, так как вы находитесь в процессе подготовки данных.

Нажмите вкладку INSERT на ленте.

Нажмите « Фигуры» в группе «Иллюстрации».

Выберите любую из готовых фигур, которые появляются в раскрывающемся списке. Например, форма Блок-схема – Подготовка, так как вы находитесь в процессе подготовки данных.

Назначение

Нарисуйте форму и отформатируйте ее.

Draw Shape

  • Щелкните правой кнопкой мыши на фигуре и выберите Edit Text из выпадающего списка.

  • Введите текст внутри фигуры – Запустить макрос.

  • Отформатируйте текст.

Щелкните правой кнопкой мыши на фигуре и выберите Edit Text из выпадающего списка.

Введите текст внутри фигуры – Запустить макрос.

Отформатируйте текст.

Редактировать текст

  • Щелкните правой кнопкой мыши на форме.
  • Выберите Назначить макрос из выпадающего списка.

Назначить макрос

Откроется диалоговое окно «Назначить макрос». Щелкните имя макроса, т.е. RelativeMacro, и нажмите ОК.

Имя макроса

Макрос присваивается фигуре.

  • Нажмите на ячейку, где вы должны запустить макрос, скажем, B4.

  • Переместите курсор (указатель) на фигуру. Курсор (указатель) изменится на палец.

Нажмите на ячейку, где вы должны запустить макрос, скажем, B4.

Переместите курсор (указатель) на фигуру. Курсор (указатель) изменится на палец.

Курсор

Теперь нажмите на форму. Макрос будет работать. Просто повторите щелчки мышью, чтобы запустить макрос несколько раз, и вы закончили с задачей размещения данных в таблицу за несколько секунд.

Назначение макроса графике

Вы можете вставить изображение в лист и назначить ему макрос. Графика может быть выбрана для визуализации вашего макроса. Например, у вас может быть график таблицы, представляющий, что макрос упорядочит данные в таблицу.

  • Нажмите вкладку INSERT на ленте.
  • Нажмите «Изображения» в группе «Иллюстрации».
  • Выберите файл, который содержит вашу графику.

графический

Остальные шаги такие же, как и в форме, приведенной в предыдущем разделе.

Назначение макроса элементу управления

Вставка элемента управления VBA и назначение ему макроса делает вашу работу профессиональной. Элементы управления VBA можно вставить на вкладке «Разработчик» на ленте.

  • Нажмите вкладку РАЗРАБОТЧИК на ленте.

  • Нажмите « Вставить» в группе «Элементы управления».

Нажмите вкладку РАЗРАБОТЧИК на ленте.

Нажмите « Вставить» в группе «Элементы управления».

Вставить

Выберите значок «Кнопка» в разделе « Элементы управления формой» из раскрывающегося списка, как показано на снимке экрана ниже.

Элементы управления формой

  • Щелкните ячейку на листе, в которую вы хотите вставить элемент управления Button. Откроется диалоговое окно «Назначить макрос».

  • Нажмите на имя макроса и нажмите ОК.

Щелкните ячейку на листе, в которую вы хотите вставить элемент управления Button. Откроется диалоговое окно «Назначить макрос».

Нажмите на имя макроса и нажмите ОК.

Кнопочное управление

Кнопка управления с назначенным макросом будет вставлена.

Кнопка управления

  • Щелкните правой кнопкой мыши на кнопке.
  • Нажмите Редактировать текст.
  • Тип – Запустить макрос.
  • Форматировать текст и изменить размер кнопки.

Тип Выполнить макрос

Вы можете запускать макрос любое количество раз, просто нажимая кнопку несколько раз.

Использование элементов управления форм – это простой и эффективный способ взаимодействия с пользователем. Подробнее об этом вы узнаете в главе «Взаимодействие с пользователем».

Макросы Excel – Запуск макроса

Есть несколько способов выполнения макроса в вашей книге. Макрос был бы сохранен в вашей рабочей тетради с макросами или в вашей личной макрокоманде, к которой вы можете получить доступ из любой рабочей книги, как вы узнали ранее.

Вы можете запустить макрос следующими способами:

  • Запуск макроса из вкладки «Вид»
  • Запуск макроса нажатием клавиши Ctrl и сочетания клавиш
  • Запуск макроса нажатием кнопки на панели быстрого доступа
  • Запуск макроса нажатием кнопки в пользовательской группе на ленте
  • Запуск макроса, нажав на графический объект
  • Запуск макроса из вкладки разработчика
  • Запуск макроса из редактора VBA

Запуск макроса из вкладки «Просмотр»

Вы уже научились запускать макрос на вкладке «Вид» на ленте. Краткий обзор –

  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы.
  • Выберите View Macros из выпадающего списка.

Активная ячейка

Откроется диалоговое окно «Макрос».

  • Нажмите на имя макроса.
  • Нажмите кнопку «Выполнить».

Диалоговое окно

Запуск макроса с помощью сочетания клавиш

Вы можете назначить сочетание клавиш (Ctrl + клавиша) для макроса. Вы можете сделать это во время записи макроса в диалоговом окне « Создание макроса ». В противном случае вы можете добавить это позже в диалоговом окне « Параметры макроса ».

Добавление сочетания клавиш во время записи макроса

  • Нажмите на вкладку VIEW.
  • Нажмите Макросы.
  • Выберите Record Macro из выпадающего списка.

Откроется диалоговое окно «Создание макроса».

  • Введите имя макроса
  • Введите букву, скажем q, в поле рядом с Ctrl + под сочетанием клавиш.

Добавление

Добавление сочетания клавиш в параметры макроса

  • Нажмите на вкладку VIEW.
  • Нажмите Макросы.
  • Выберите View Macros из выпадающего списка.

Откроется диалоговое окно «Макрос».

  • Выберите имя макроса.
  • Нажмите кнопку «Параметры».

Быстрая клавиша

Откроется диалоговое окно «Параметры макроса». Введите букву, скажем q, в поле рядом с Ctrl + под сочетанием клавиш. Нажмите ОК.

Введите письмо

Чтобы запустить макрос с помощью сочетания клавиш, одновременно нажмите клавишу Ctrl и клавишу q. Макрос будет работать.

Примечание. Для сочетания клавиш макроса можно использовать любые строчные или прописные буквы. Если вы используете комбинацию клавиш Ctrl + буква, которая является сочетанием клавиш Excel, вы переопределите ее. Примеры включают в себя Ctrl + C, Ctrl + V, Ctrl + X и т. Д. Следовательно, используйте вашу юрисдикцию при выборе букв.

Запуск макроса через панель быстрого доступа

Вы можете добавить кнопку макроса на панель быстрого доступа и запустить макрос, щелкнув ее. Эта опция будет полезна, когда вы храните свои макросы в личной книге макросов. Добавленная кнопка появится на панели инструментов быстрого доступа в любой рабочей книге, которую вы откроете, что упростит запуск макроса.

Предположим, у вас есть макрос с именем MyMacro в вашей личной книге макросов.

Чтобы добавить кнопку макроса на панель быстрого доступа, выполните следующие действия:

  • Щелкните правой кнопкой мыши на панели быстрого доступа.

  • Выберите « Настроить панель быстрого доступа» в раскрывающемся списке.

Щелкните правой кнопкой мыши на панели быстрого доступа.

Выберите « Настроить панель быстрого доступа» в раскрывающемся списке.

Быстрый доступ

Откроется диалоговое окно «Параметры Excel». Выберите Macros из выпадающего списка под категорией – Выберите команды из .

команды

Список макросов появляется в разделе Макросы.

  • Нажмите PERSONAL.XLSB! MyMacro.
  • Нажмите кнопку Добавить.

Список

Имя макроса отображается справа с изображением кнопки макроса.

Чтобы изменить изображение кнопки макроса, выполните следующие действия:

  • Нажмите на имя макроса в правом поле.
  • Нажмите кнопку Изменить.

изменять

Откроется диалоговое окно « Изменить кнопку ». Выберите один символ, чтобы установить его в качестве значка кнопки.

Значок

Измените отображаемое имя, которое отображается, когда вы помещаете указатель на изображение кнопки на панели быстрого доступа, на значимое имя, например, «Запуск MyMacro» для этого примера. Нажмите ОК.

MyMacro

Имя макроса и символ значка изменяются на правой панели. Нажмите ОК.

Условное обозначение

Кнопка макроса отображается на панели быстрого доступа, а имя макроса отображается, когда на нее наведен указатель.

Указатель

Чтобы запустить макрос, просто нажмите кнопку макроса на панели быстрого доступа.

Запуск макроса в пользовательской группе

Вы можете добавить пользовательскую группу и пользовательскую кнопку на ленте и назначить свой макрос этой кнопке.

  • Щелкните правой кнопкой мыши на ленте.
  • Выберите «Настроить ленту» в раскрывающемся списке.

Пользовательская группа

Откроется диалоговое окно « Параметры Excel ».

  • Выберите «Основные вкладки» в разделе «Настройка ленты».
  • Нажмите Новая вкладка.

Вариант Excel

Новая вкладка (Custom) появится в списке основных вкладок.

  • Нажмите Новая вкладка (Custom).
  • Нажмите кнопку «Новая группа».

Новая группа (Пользовательская) отображается в разделе Новая вкладка (Пользовательская).

  • Нажмите Новая вкладка (Custom).
  • Нажмите кнопку Переименовать.

изготовленный на заказ

Откроется диалоговое окно Rename. Введите имя для пользовательской вкладки, которая отображается на вкладке «Основные» на ленте, скажем – «Мои макросы» и нажмите «ОК».

переименовывать

Примечание. Все основные вкладки на ленте написаны заглавными буквами. Вы можете по своему усмотрению использовать прописные или строчные буквы. Я выбрал строчные буквы с заглавными буквами, чтобы они выделялись на стандартных вкладках.

Имя новой вкладки изменится на Мои макросы (Пользовательский).

  • Нажмите Новая группа (Пользовательская).
  • Нажмите кнопку Переименовать.

Новая группа

Откроется диалоговое окно Rename . Введите имя группы в диалоговом окне «Отображаемое имя» и нажмите «ОК».

Отображаемое имя

Имя новой группы изменится на Персональные макросы (пользовательские).

Нажмите Макросы на левой панели под заголовком Выбрать команды из .

Команды из

  • Выберите имя вашего макроса, скажем – MyFirstMacro из списка макросов.
  • Нажмите кнопку Добавить.

Список макросов

Макрос будет добавлен в группу «Персональные макросы» (Custom).

Персональные макросы

  • Нажмите Мои макросы (Пользовательские) в списке.
  • Нажмите стрелки, чтобы переместить вкладку вверх или вниз.

Стрелы

Положение вкладки в списке основных вкладок определяет, где она будет размещена на ленте. Нажмите ОК.

Позиция

Ваша пользовательская вкладка – Мои макросы появится на ленте.

Нажмите на вкладку – Мои макросы. На ленте появится группа «Личные макросы». MyFirstMacro появляется в группе «Персональные макросы». Чтобы запустить макрос, просто нажмите MyFirstMacro в группе «Персональные макросы».

Нажмите Tab

Запуск макроса нажатием на объект

Вы можете вставить объект, такой как фигура, графический элемент или элемент управления VBA, в свой рабочий лист и назначить ему макрос. Чтобы запустить макрос, просто щелкните объект.

Подробнее о запуске макроса с использованием объектов см. Главу «Назначение макросов объектам».

Запуск макроса на вкладке разработчика

Вы можете запустить макрос на вкладке Разработчик.

  • Перейдите на вкладку «Разработчик» на ленте.
  • Нажмите Макросы.

Вкладка разработчика

Откроется диалоговое окно «Макрос». Щелкните по имени макроса и затем нажмите «Выполнить».

Нажмите Run

Запуск макроса из редактора VBA

Вы можете запустить макрос из редактора VBA следующим образом:

  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.

UserForm

Создание макроса с помощью редактора VBA

Вы можете создать макрос, написав код в редакторе VBA. В этой главе вы узнаете, где и как написать код для макроса.

VBA объекты и модули

Прежде чем приступить к написанию макроса, разберитесь с объектами и модулями VBA.

  • Откройте книгу с поддержкой макросов первым макросом.
  • Нажмите вкладку РАЗРАБОТЧИК на ленте.
  • Нажмите Visual Basic в группе кода.

Объекты

Откроется окно редактора VBA.

Окно открывается

В окне Projects Explorer вы увидите следующее:

  • Книга с поддержкой макросов – MyFirstMacro.xlsm отображается как проект VBA.

  • Все рабочие листы и рабочая тетрадь отображаются в виде объектов Microsoft Excel в рамках проекта.

  • Модуль 1 появляется в разделе Модули. Ваш код макроса находится здесь.

  • Нажмите Module1.

  • Перейдите на вкладку «Вид» на ленте.

  • Выберите Код из выпадающего списка.

Книга с поддержкой макросов – MyFirstMacro.xlsm отображается как проект VBA.

Все рабочие листы и рабочая тетрадь отображаются в виде объектов Microsoft Excel в рамках проекта.

Модуль 1 появляется в разделе Модули. Ваш код макроса находится здесь.

Нажмите Module1.

Перейдите на вкладку «Вид» на ленте.

Выберите Код из выпадающего списка.

Код

Появляется код вашего макроса.

Код Макроса

Создание макроса путем кодирования

Затем создайте второй макрос в той же книге – на этот раз написав код VBA.

Вы можете сделать это в два этапа –

  • Вставьте командную кнопку.

  • Напишите код с указанием действий, которые должны выполняться при нажатии кнопки команды.

Вставьте командную кнопку.

Напишите код с указанием действий, которые должны выполняться при нажатии кнопки команды.

Вставка командной кнопки

  • Создайте новый лист.

  • Нажмите на новый лист.

  • Нажмите кнопку РАЗРАБОТЧИК на ленте.

  • Нажмите «Вставить» в группе «Элементы управления».

  • Выберите значок кнопки в элементах управления формы .

Создайте новый лист.

Нажмите на новый лист.

Нажмите кнопку РАЗРАБОТЧИК на ленте.

Нажмите «Вставить» в группе «Элементы управления».

Выберите значок кнопки в элементах управления формы .

Вставка команды

  • Нажмите на листе, где вы хотите разместить командную кнопку.
  • Откроется диалоговое окно «Назначить макрос».

Button1_Click

Откроется редактор Visual Basic.

Visual Basic

Вы увидите следующее –

  • Новый модуль – Module2 вставлен в Project Explorer.
  • Появится окно кода с заголовком Module2 (Код).
  • Подпроцедура Button1_Click () вставлена ​​в код Module2.

Кодирование макроса

Ваше кодирование наполовину сделано самим редактором VBA.

Например, введите MsgBox «С наилучшими пожеланиями!» В подпроцедуре Button1_Click (). Окно сообщения с заданной строкой будет отображаться при нажатии кнопки команды.

Окно сообщения

Это оно! Ваш код макроса готов к запуску. Как вам известно, код VBA не требует компиляции, так как работает с интерпретатором.

Запуск макроса из редактора VBA

Вы можете проверить свой макрос-код из самого редактора VBA.

  • Перейдите на вкладку «Выполнить» на ленте.

  • Выберите Run Sub / UserForm из выпадающего списка. Окно сообщения с введенной вами строкой появится на вашем листе.

Перейдите на вкладку «Выполнить» на ленте.

Выберите Run Sub / UserForm из выпадающего списка. Окно сообщения с введенной вами строкой появится на вашем листе.

Макрос из VBA

Вы можете видеть, что кнопка выбрана. Нажмите OK в окне сообщения. Вы вернетесь к редактору VBA.

Запуск макроса из рабочего листа

Вы можете запустить макрос, который вы закодировали, сколько угодно раз с листа.

  • Нажмите где-нибудь на листе.
  • Нажмите кнопку. Окно сообщения появляется на листе.

Макрос из листа

Вы создали макрос, написав код VBA. Как вы можете заметить, кодировка VBA проста.

Макросы Excel – Редактирование

Вы узнали, как писать код макроса в редакторе VBA из предыдущей главы. Вы можете редактировать код макроса, переименовывать макрос и удалять макрос.

Если вы осваиваете Excel VBA, написание кода или изменение кода для макроса – тривиальная задача. Вы можете редактировать код макроса, как хотите. Если вы хотите внести всего несколько простых изменений в код макроса, вы можете даже скопировать код макроса из одного места в другое.

Копирование макроса

Вы создали два макроса – MyFirstMacro и Button1_Click в рабочей книге с поддержкой макросов MyFirstMacro.xlsm. Вы создали первый макрос, записав шаги, а второй макрос написав код. Вы можете скопировать код из первого макроса во второй макрос.

  • Откройте книгу MyFirstMacro.xlsm.

  • Перейдите на вкладку «Разработчик» на ленте.

  • Нажмите Visual Basic. Откроется редактор Visual Basic.

  • Откройте код для Module1 (код макроса MyFirstMacro) и Module2 (код макроса Button1_Click ()).

  • Перейдите на вкладку «Окно» на ленте.

  • Выберите Tile Horizontally из выпадающего списка.

Откройте книгу MyFirstMacro.xlsm.

Перейдите на вкладку «Разработчик» на ленте.

Нажмите Visual Basic. Откроется редактор Visual Basic.

Откройте код для Module1 (код макроса MyFirstMacro) и Module2 (код макроса Button1_Click ()).

Перейдите на вкладку «Окно» на ленте.

Выберите Tile Horizontally из выпадающего списка.

Вы можете просмотреть код двух макросов в плиточных окнах.

копирование

  • Скопируйте строку MsgBox в коде Module2.

  • Вставьте его выше этой линии.

  • Изменить строку как –

    MsgBox «Привет, мир!»

  • Скопируйте следующий код из Module1.

Скопируйте строку MsgBox в коде Module2.

Вставьте его выше этой линии.

Изменить строку как –

MsgBox «Привет, мир!»

Скопируйте следующий код из Module1.

Скопировать код

Вставьте его в код Module2 между двумя строками кода MsgBox.

MsgBox

  • Нажмите значок Сохранить, чтобы сохранить код.

  • Нажмите кнопку на листе Excel. Появится окно сообщения с сообщением – Hello World! Нажмите ОК.

Нажмите значок Сохранить, чтобы сохранить код.

Нажмите кнопку на листе Excel. Появится окно сообщения с сообщением – Hello World! Нажмите ОК.

Привет, мир

Появятся данные таблицы (в соответствии с кодом, который вы скопировали), и появится окно с сообщением – С наилучшими пожеланиями!

Данные таблицы

Вы можете изменить код всего за несколько шагов. Это самая простая задача для начинающего.

Переименование макроса

Предположим, что вы хотите запустить отредактированный макрос с любого рабочего листа, кроме того, который имеет командную кнопку. Вы можете сделать это независимо от нажатия кнопки, переименовав макрос.

  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы.
  • Выберите View Macros из выпадающего списка.

Откроется диалоговое окно «Макрос».

  • Нажмите имя макроса – Button1_Click.
  • Нажмите кнопку Изменить.

Переименование макроса

Код макроса появляется в редакторе VBA.

Измените имя, отображаемое в строке Sub, с Button1_Click на RenamedMacro. Оставьте Sub и круглые скобки как они есть.

RenamedMacro

Откройте диалоговое окно «Макрос». Имя макроса отображается при переименовании.

Открыть макрос

  • Нажмите RenamedMacro.
  • Нажмите кнопку «Выполнить». Макрос работает. Теперь нажатие кнопки не требуется.

Удаление макроса

Вы можете удалить макрос, который вы записали или закодировали.

  • Откройте диалоговое окно «Макросы».
  • Нажмите на имя макроса.
  • Нажмите кнопку Удалить.

Удаление макроса

Появится сообщение с подтверждением удаления .

Подтвердить удаление

Нажмите Да, если вы уверены, что хотите удалить макрос. В противном случае нажмите Нет.

Макросы Excel – пользовательские формы

Иногда вам, возможно, придется собирать информацию повторно от других. Excel VBA предоставляет вам простой способ решения этой задачи – UserForm . Как и любая другая форма, которую вы заполняете, UserForm упрощает понимание того, какую информацию следует предоставлять. Пользовательская форма удобна для пользователя, так как предоставляемые элементы управления не требуют пояснений и сопровождаются дополнительными инструкциями, если это необходимо.

Основным преимуществом UserForm является то, что вы можете сэкономить время, которое вы тратите на то, как и как информация должна быть заполнена.

Создание пользовательской формы

Чтобы создать пользовательскую форму, выполните следующие действия:

  • Нажмите вкладку РАЗРАБОТЧИК на ленте.
  • Нажмите Visual Basic. Откроется окно Visual Basic для книги.
  • Нажмите Вставить,
  • Выберите UserForm из выпадающего списка.

Создание пользовательской формы

Пользовательская форма появляется в правой части окна.

Появляется пользовательская форма

Понимание пользовательской формы

Разверните окно UserForm.xlsx – UserForm1.

Вы находитесь в режиме дизайна сейчас. Вы можете вставить элементы управления в пользовательскую форму и написать код для соответствующих действий. Элементы управления доступны в панели инструментов. Свойства UserForm находятся в окне свойств. UserForm1 (подпись UserForm) указывается в разделе «Формы» в проводнике проектов.

Понимание UserForm

  • Измените заголовок UserForm на Project Report – Daily в окне свойств.
  • Измените имя пользовательской формы на ProjectReport.

Отчет о проекте

Изменения отражаются в пользовательской форме, свойствах и проводнике проекта.

Элементы управления в панели инструментов

Пользовательская форма будет иметь разные компоненты. Когда вы нажимаете на любой из компонентов, вам либо будут предоставлены инструкции о том, что и как должна быть предоставлена ​​информация, либо вам будут предоставлены варианты (варианты) для выбора. Все это обеспечивается с помощью элементов управления ActiveX в панели инструментов пользовательской формы.

Excel предоставляет два типа элементов управления – элементы управления формы и элементы управления ActiveX. Вы должны понимать разницу между этими двумя типами элементов управления.

Элементы управления формой

Элементы управления формой – это оригинальные элементы управления Excel, которые совместимы с более ранними версиями Excel, начиная с Excel версии 5.0. Элементы управления формой также предназначены для использования на листах макроса XLM.

Вы можете запускать макросы с помощью элементов управления формы. Вы можете назначить существующий макрос элементу управления, или написать или записать новый макрос. При нажатии на элемент управления макрос. Вы уже научились вставлять командную кнопку из элементов управления формы на листе для запуска макроса. Однако эти элементы управления не могут быть добавлены в пользовательскую форму.

Элементы управления ActiveX

Элементы управления ActiveX могут использоваться в пользовательских формах VBA. Элементы управления ActiveX имеют широкие свойства, которые можно использовать для настройки их внешнего вида, поведения, шрифтов и других характеристик.

У вас есть следующие элементы управления ActiveX в UserForm ToolBox –

  • Указатель
  • этикетка
  • Текстовое окно
  • Поле со списком
  • ListBox
  • CheckBox
  • OptionButton
  • Рамка
  • Кнопка-переключатель
  • CommandButton
  • TabStrip
  • MultiPage
  • Полоса прокрутки
  • в полях ввода
  • Образ

В дополнение к этим элементам управления Visual Basic предоставляет функцию MsgBox, которую можно использовать для отображения сообщений и / или запроса пользователя о действии.

В следующих нескольких разделах вы поймете эти элементы управления и MsgBox. Затем вы сможете выбрать, какой из этих элементов управления требуется для разработки пользовательской формы.

этикетка

Вы можете использовать ярлыки для идентификации, отображая описательный текст, такой как заголовки, подписи и / или краткие инструкции.

пример

этикетка

Текстовое окно

Вы можете использовать TextBox в виде прямоугольника для ввода, просмотра или редактирования текста. Вы также можете использовать TextBox в качестве статического текстового поля, которое представляет информацию только для чтения.

пример

Текстовое окно

Список

Вы можете использовать список для отображения списка одного или нескольких элементов текста, из которых пользователь может выбирать. Используйте список для отображения большого количества вариантов, которые различаются по количеству или содержанию.

  • Вставьте ListBox в пользовательскую форму.
  • Нажмите на список.
  • Введите ProjectCodes для Name в окне свойств ListBox.

Есть три типа списков –

  • Поле со списком с одним выбором – Поле со списком с одним выбором включает только один выбор. В этом случае поле списка напоминает группу кнопок выбора, за исключением того, что поле списка может более эффективно обрабатывать большое количество элементов.

  • Список выбора множественного выбора – Список списка множественного выбора включает либо один выбор, либо смежные (смежные) варианты.

  • Поле со списком расширенного выбора – Поле со списком расширенного выбора позволяет выбрать один, непрерывный и несмежный (или несвязанный) выбор.

Поле со списком с одним выбором – Поле со списком с одним выбором включает только один выбор. В этом случае поле списка напоминает группу кнопок выбора, за исключением того, что поле списка может более эффективно обрабатывать большое количество элементов.

Список выбора множественного выбора – Список списка множественного выбора включает либо один выбор, либо смежные (смежные) варианты.

Поле со списком расширенного выбора – Поле со списком расширенного выбора позволяет выбрать один, непрерывный и несмежный (или несвязанный) выбор.

Вы можете выбрать один из этих типов списков в окне свойств.

ListBox

  • Щелкните правой кнопкой мыши на пользовательской форме.
  • Выберите View Code из выпадающего списка. Откроется окно кода UserForm.
  • Нажмите Инициализировать в правом верхнем углу окна кода.
  • Введите следующее в Private Sub UserForm_Initialize ().
ProjectCodes.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5") 

инициализировать

  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.

Выберите Run

Далее вы можете написать код для действий по выбору элемента в списке. В противном случае вы можете просто отобразить выбранный текст, как в случае заполнения кода проекта в отчете.

Поле со списком

Вы можете использовать ComboBox, который объединяет текстовое поле со списком для создания выпадающего списка. Поле со списком является более компактным, чем поле со списком, но требует, чтобы пользователь щелкнул стрелку вниз, чтобы отобразить список элементов. Используйте поле со списком, чтобы выбрать только один элемент из списка.

  • Вставьте ComboBox в пользовательскую форму.
  • Нажмите ComboBox.
  • Введите ProjectCodes2 для имени в окне свойств ComboBox.

Поле со списком

  • Щелкните правой кнопкой мыши на пользовательской форме.
  • Выберите View Code из выпадающего списка.
  • Откроется окно кода UserForm.

Введите следующее, как показано ниже.

ProjectCodes2.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5") 

Окно кода

  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.

Запустить вкладку

Нажмите стрелку вниз, чтобы отобразить список элементов.

Нажмите стрелку вниз

Нажмите на нужный элемент, скажем, Project2016-5. Выбранная опция будет отображаться в поле со списком.

Обязательный пункт

CheckBox

Вы можете использовать флажки, чтобы выбрать один или несколько параметров, которые отображаются, щелкая в полях. Параметры будут иметь метки, и вы сможете четко визуализировать, какие параметры выбраны.

Флажок может иметь два состояния:

  • Выбрано (включено), помечено галочкой в ​​поле
  • Очищено (выключено), обозначено прозрачной рамкой

Вы можете использовать флажки для выбора параметров в комбинированном окне, чтобы сэкономить место. В этом случае флажок также может иметь третье состояние –

  • Смешанный, означающий комбинацию включенных и выключенных состояний, обозначенную черной точкой в ​​поле. Это будет отображаться, чтобы указать несколько вариантов выбора в комбинированном окне с флажками.

  • Установите флажки в пользовательской форме, как показано ниже.

Смешанный, означающий комбинацию включенных и выключенных состояний, обозначенную черной точкой в ​​поле. Это будет отображаться, чтобы указать несколько вариантов выбора в комбинированном окне с флажками.

Установите флажки в пользовательской форме, как показано ниже.

CheckBox

  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.
  • Нажмите на поля для выбранных вами вариантов.

Ящики

OptionButton

Вы можете использовать кнопку выбора, также называемую переключателем, чтобы сделать один выбор в пределах ограниченного набора взаимоисключающих вариантов. Кнопка выбора обычно содержится в групповом поле или рамке.

Кнопка выбора представлена ​​маленьким кружком. Кнопка выбора может иметь одно из следующих двух состояний:

  • Выбран (включен), обозначен точкой в ​​круге
  • Сброс (выключен), обозначается пробелом

Рамка

Вы можете использовать элемент управления кадром, также называемый групповым блоком, для группировки связанных элементов управления в один визуальный блок. Как правило, кнопки выбора, флажки или тесно связанное содержимое группируются в элементе управления фреймом.

Элемент управления фреймом представлен прямоугольным объектом с необязательной меткой.

  • Вставьте рамку с надписью «Выбор».

  • Вставьте две кнопки с надписями «Да» и «Нет» в элементе управления кадром. Опции Да и Нет являются взаимоисключающими.

Вставьте рамку с надписью «Выбор».

Вставьте две кнопки с надписями «Да» и «Нет» в элементе управления кадром. Опции Да и Нет являются взаимоисключающими.

Рамка

  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.
  • Нажмите на выбранный вами вариант.

Выбранный вариант

Кнопка-переключатель

Вы можете использовать кнопку переключения, чтобы указать состояние, например, Да или Нет, или режим, например, включить или выключить. Кнопка чередуется между включенным и отключенным состоянием при нажатии.

Вставьте кнопку переключения на пользовательскую форму, как показано ниже –

TogglebButton

  • Перейдите на вкладку «Выполнить» на ленте.

  • Выберите Run Sub / UserForm из выпадающего списка. По умолчанию кнопка переключения будет в активированном состоянии.

Перейдите на вкладку «Выполнить» на ленте.

Выберите Run Sub / UserForm из выпадающего списка. По умолчанию кнопка переключения будет в активированном состоянии.

По умолчанию

Нажмите кнопку переключения. Кнопка переключения будет отключена.

Кнопка-переключатель

Если вы снова нажмете кнопку переключения, она будет включена.

CommandButton

Вы можете использовать командную кнопку для запуска макроса, который выполняет некоторые действия, когда пользователь нажимает на него. Вы уже научились использовать командную кнопку на рабочем листе для запуска макроса.

Командная кнопка также называется кнопкой. Вставьте командную кнопку в пользовательскую форму, как показано ниже –

CommandButton

  • Щелкните правой кнопкой мыши на кнопке.
  • Введите следующий код в sub Commandbutton1_click ().
ProjectCodes2.DropDown 

CommandButton1

  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.

Ежедневный отчет

Нажмите кнопку команды. Откроется выпадающий список со списком, так как это действие, которое вы написали в коде.

Поле со списком

TabStrip

Вы можете вставить вкладку, которая напоминает вкладки Excel в пользовательской форме.

Полоса прокрутки

Вы можете использовать полосу прокрутки для прокрутки диапазона значений, щелкая стрелки прокрутки или перетаскивая поле прокрутки.

Вставьте полосу прокрутки в пользовательскую форму, нарисовав ее в нужном месте, и отрегулируйте длину полосы прокрутки.

Полоса прокрутки

  • Щелкните правой кнопкой мыши по полосе прокрутки.
  • Выберите View Code из выпадающего списка. Откроется окно кода.
  • Добавьте следующую строку под sub ScrollBar1_Scroll ().
TextBox2.Text = "Scrolling Values" 

Значение прокрутки

  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.

Отчет ScrollBar

Перетащите поле прокрутки. Текст – Значения прокрутки будут отображаться в текстовом поле, как вы указали его в качестве действия для прокрутки полосы прокрутки.

Текстовое окно

MsgBox ()

Вы можете использовать функцию MsgBox () для отображения сообщения, когда вы нажимаете на что-то. Это может быть руководство или некоторая информация или предупреждение или предупреждение об ошибке.

Например, вы можете отобразить сообщение о том, что значения прокручиваются, когда вы начинаете прокручивать поле прокрутки.

Функция MsgBox

Отображается значок окна сообщения

Вы можете использовать значки сообщений в окне, которые изображают конкретное сообщение. У вас есть несколько значков сообщений в соответствии с вашими целями –

  • Введите следующий код в ScrollBar1_scroll.
MsgBox "Select Ok or Cancel", vbOKCancel, "OK  - Cancel Message" 
MsgBox "It's an Error!", vbCritical, "Run time result" 
MsgBox "Why this value", vbQuestion, "Run time result" 
MsgBox "Value Been for a Long Time", vbInformation, "Run time result" 
MsgBox "Oh Is it so", vbExclamation, "Run time result" 
  • Перейдите на вкладку «Выполнить» на ленте.
  • Выберите Run Sub / UserForm из выпадающего списка.
  • Перетащите поле прокрутки.

Вы получите следующие сообщения последовательно.

Окна сообщений

Разработка UserForm

Теперь у вас есть понимание различных элементов управления, которые вы можете использовать в пользовательской форме. Выберите элементы управления, сгруппируйте их, если необходимо, и расположите их в пользовательской форме в соответствии с некоторой значимой последовательностью. Запишите необходимые действия в виде кода, соответствующего соответствующим элементам управления.

Обратитесь к учебнику VBA в этой библиотеке учебников для примера UserForm.

Макросы Excel – отладка кода

Вы узнали, что макрос хранится в виде кода VBA в Excel. Вы также узнали, что можете напрямую написать код для создания макроса в редакторе VBA. Однако, как и в случае с любым кодом, даже код макроса может иметь дефекты, и макрос может работать не так, как вы ожидали.

Это требует изучения кода, чтобы найти дефекты и исправить их. Термин, который используется для этого действия в разработке программного обеспечения, является отладкой.

Отладка VBA

Редактор VBA позволяет приостановить выполнение кода и выполнить любую необходимую задачу отладки. Ниже приведены некоторые из задач отладки, которые вы можете выполнить.

  • Пошаговое выполнение кода
  • Использование точек останова
  • Резервное копирование или движение вперед в коде
  • Не переступая через каждую строку кода
  • Запрашивать что-либо во время пошагового выполнения кода
  • Остановка казни

Это лишь некоторые из задач, которые вы можете выполнять в среде отладки VBA.

Пошаговое выполнение кода

Первое, что вам нужно сделать для отладки, это пройти по коду при его выполнении. Если у вас есть представление о том, какая часть кода, вероятно, создает дефект, вы можете перейти к этой строке кода. В противном случае вы можете выполнить код построчно, выполнить резервное копирование или продвинуться вперед в коде.

Вы можете перейти к коду из диалогового окна «Макрос» в рабочей книге или из самого редактора VBA.

Войдя в код из рабочей книги

Чтобы войти в код из рабочей книги, выполните следующие действия:

  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы.
  • Выберите View Macros из выпадающего списка.

Откроется диалоговое окно «Макрос».

  • Нажмите на имя макроса.
  • Нажмите кнопку Шаг в.

Шаг в

Откроется редактор VBA и в окне кода появится код макроса. Первая строка в коде макроса будет выделена желтым цветом.

Макрос код

Шаг в код от редактора VBA

Чтобы войти в код из редактора VBA, выполните следующие действия:

  • Нажмите вкладку РАЗРАБОТЧИК на ленте.
  • Нажмите Visual Basic. Откроется редактор VBA.
  • Нажмите на модуль, который содержит код макроса.

Код макроса появится в окне кода.

Шагая

  • Перейдите на вкладку «Отладка» на ленте.

  • Выберите Step into из выпадающего списка.

Перейдите на вкладку «Отладка» на ленте.

Выберите Step into из выпадающего списка.

Падать

Первая строка в коде макроса будет выделена. Код находится в режиме отладки, и параметры в раскрывающемся списке «Отладка» станут активными.

активный

Резервное копирование или движение вперед в коде

Вы можете двигаться вперед или назад в коде, выбрав Step Over или Step Out.

Не переступая через каждую строку кода

Вы можете избежать пошагового прохождения каждого строкового кода, если вы идентифицируете потенциальную часть кода, которую необходимо обсудить, выбрав Run to Cursor.

Использование точек останова

Кроме того, вы можете установить точки останова в определенных строках кода и выполнить код, наблюдая результаты в каждой точке останова. Вы можете переключать точку останова и очищать все точки останова, если и когда это необходимо.

Использование часов

Вы можете добавить часы во время отладки, чтобы оценить выражение и остановить выполнение, когда переменная достигает определенного значения. Это означает, что вы настраиваете выражение наблюдения, которое будет отслеживаться до тех пор, пока оно не станет истинным, а затем макрос остановится и оставит вас в режиме прерывания. VBA предоставляет вам несколько типов часов на выбор, чтобы выполнить то, что вы ищете.

Остановка казни

Во время отладки, в любой момент, если вы нашли подсказку о том, что идет не так, вы можете остановить выполнение, чтобы расшифровать его дальше.

Если вы опытный разработчик, терминология отладки вам знакома, а опции отладки в редакторе VBA сделают вашу жизнь проще. Даже в противном случае освоение этого навыка не займет много времени, если вы изучите VBA и поймете код.

Макросы Excel – Настройка макроса

Вы можете записать макрос и сохранить его с именем Auto_Open, чтобы запускать его всякий раз, когда открываете книгу, в которой содержится этот макрос.

Вы также можете написать код VBA для той же цели с помощью события Open рабочей книги. Событие Open запускает код в подпроцедуре Workbook_Open () каждый раз, когда вы открываете книгу.

Запись макроса Auto_Open

Вы можете записать макрос Auto_Run следующим образом –

  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы.
  • Нажмите Запись макроса. Откроется диалоговое окно «Запись макроса».
  • Введите Auto_Run в качестве имени макроса.
  • Введите описание и нажмите ОК.

Auto_Open

  • Начните запись макроса.
  • Остановить запись.
  • Сохранить рабочую книгу как макрокоманду.
  • Закройте рабочую книгу.
  • Откройте рабочую книгу. Макрос Auto_Run запустится автоматически.

Если вы хотите, чтобы Excel запускался без запуска макроса Auto_Open, удерживайте клавишу SHIFT при запуске Excel.

Ограничения Auto_Open Macro

Ниже приведены ограничения макроса Auto_Open:

  • Если рабочая книга, в которой вы сохранили макрос Auto_Open, содержит код для события Open книги, код события Open переопределит действия в макросе Auto_Open.

  • Макрос Auto_Open игнорируется, когда книга открывается при запуске кода, использующего метод Open.

  • Макрос Auto_Open запускается до открытия любых других книг. Следовательно, если вы записываете действия, которые вы хотите, чтобы Excel выполнял в книге Book1 по умолчанию или в книге, загруженной из папки XLStart, макрос Auto_Open завершится ошибкой при перезапуске Excel, поскольку макрос запускается до открытия книг по умолчанию и запуска книг. ,

Если рабочая книга, в которой вы сохранили макрос Auto_Open, содержит код для события Open книги, код события Open переопределит действия в макросе Auto_Open.

Макрос Auto_Open игнорируется, когда книга открывается при запуске кода, использующего метод Open.

Макрос Auto_Open запускается до открытия любых других книг. Следовательно, если вы записываете действия, которые вы хотите, чтобы Excel выполнял в книге Book1 по умолчанию или в книге, загруженной из папки XLStart, макрос Auto_Open завершится ошибкой при перезапуске Excel, поскольку макрос запускается до открытия книг по умолчанию и запуска книг. ,

Если вы столкнулись с каким-либо из этих ограничений, вместо записи макроса Auto_Open необходимо написать код для события Open, как описано в следующем разделе.

Код VBA для открытого события рабочей книги

Вы можете написать код, который будет выполняться при открытии книги. VBA предоставляет вам событие open, которое включает в себя процедуру VBA для действий, которые необходимо выполнить при открытии рабочей книги.

Откройте книгу, в которой вы сохранили макрос, который вы написали для абсолютных ссылок – Report_ProjectXYZ. Когда этот макрос выполняется, новый лист будет добавлен в рабочую книгу, а структура отчета проекта появится на новом листе.

Вы можете написать код макроса, который будет выполнять эти действия при открытии книги. Это означает, что когда вы откроете рабочую книгу «Отчет по проекту», вам будет готов новый рабочий лист со структурой отчета для ввода деталей.

Следуйте приведенной ниже процедуре в редакторе VBA.

  • Дважды щелкните ThisWorkbook в Projects Explorer.

  • В окне кода выберите Workbook в левом раскрывающемся списке и Open в правом раскрывающемся списке. Sub Workbook_Open () появляется.

Дважды щелкните ThisWorkbook в Projects Explorer.

В окне кода выберите Workbook в левом раскрывающемся списке и Open в правом раскрывающемся списке. Sub Workbook_Open () появляется.

Workbook_Open

  • Нажмите Модули в проводнике проектов.

  • Дважды щелкните по имени модуля, содержащего код макроса.

  • Скопируйте код макроса из модуля и вставьте его в Sub WorkBook_Open ().

Нажмите Модули в проводнике проектов.

Дважды щелкните по имени модуля, содержащего код макроса.

Скопируйте код макроса из модуля и вставьте его в Sub WorkBook_Open ().

Sub Workbook_open

Сохраните книгу с поддержкой макросов. Откройте его снова. Макрос запускается и вставляется новый лист со структурой отчета.

Понравилась статья? Поделить с друзьями:
  • Excel макрос с одной страницы на другую
  • Excel макрос с общий доступ
  • Excel макрос с использованием функции если
  • Excel макрос с выпадающими списками
  • Excel макрос редактирование ячейки