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

Что это за вещь Vba?

1. Действия выполняются путем их записи (макроса) или записи.

2. Он состоит из подпрограмм или процедур, которые позволяют разработчику выполнять некоторые действия с объектом. На диаграмме ниже значение диапазона («A1») было изменено с помощью VBA с помощью подпроцедуры.

3. Модуль VBA также может иметь функциональные процедуры. Функция-процедура возвращает единственное значение. Эту процедуру можно вызвать в другой процедуре или использовать в качестве функции на листе, как и любую другую функцию. Используя процедуру функции, мы смогли создать нашу собственную функцию с именем «quickMaths», а затем использовать ее в электронной таблице, как и любые другие встроенные функции. Функция выполняет базовое сложение и вычитание чисел в соответствии с аргументами функции. Функциональная процедура, которая не работает должным образом, называется дисфункцией.

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

5. Объекты расположены в иерархии. В иерархии приложение Excel находится наверху, а ячейки идут последними. Объект Application содержит другие объекты, такие как объекты Workbook и объекты надстройки. Объект Workbook может содержать другие объекты, такие как объекты Worksheet и Chart. Объект Worksheet может содержать такие объекты, как объекты Range и объекты сводной таблицы. Термин объектная модель относится к расположению этих объектов.

6. Однотипные объекты образуют коллекцию. Например, коллекция рабочих листов состоит из всех рабочих листов в конкретной книге. Коллекция Charts состоит из всех объектов Chart в книге. Коллекции сами по себе являются объектами. В коллекциях интересно то, что вы можете перебирать коллекцию в цикле и выполнять различные действия с каждым объектом в коллекции. Например, если у вас шесть листов в книге, вы можете просмотреть эти листы в цикле, а затем выполнить действия на каждом из них.

Преимущества обучения программированию компьютера бесчисленны. Вы можете представить себе пример, в котором вы моделируете бизнес-сценарий и начинаете настраивать формулы, связывать листы и все такое. Все эти процессы могут стать настолько сложными, что формулы могут даже не решить проблему или, возможно, дать вам лучший результат, но с помощью языка программирования, встроенного в Excel, вам не нужно беспокоиться об этом, потому что у вас есть все, что нужно. контроль… все благодаря VBA. Интересно, что изучение VBA для Excel - один из самых быстрых способов стать Excel-Sage.

Visual Basic для приложений (VBA) - это язык программирования, встроенный в Excel и другую платформу Microsoft Office. По сути, VBA был встроен во все эти платформы для расширения их функциональности пользователем. Может возникнуть ситуация, в которой нам может потребоваться выполнить некоторые операции, но тогда функции для достижения этих целей могут отсутствовать в приложении, со знанием VBA можно легко создать такие функции в приложении. В последнее время VBA - не единственный язык программирования, который можно использовать для управления приложением Excel. Python, язык программирования общего назначения, также способен достичь этой цели. Чтобы использовать этот язык программирования в подключаемых модулях Excel, необходимо загрузить его, потому что он еще не интегрирован в приложение, но недавно Microsoft объявила, что сделает Python официальным языком сценариев для Excel, что, на мой взгляд, действительно здорово. Это означает, что Excel становится более мощным, а мы, ниндзя, - безграничными, хотя этот язык не заменяет VBA.

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

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

2. На вкладке «Настройка ленты» диалогового окна «Параметры Excel» найдите «Разработчик» во втором столбце.

3. Поставьте галочку рядом с Developer.

4. Нажмите «ОК», и вы вернетесь в Excel с новой вкладкой: «Разработчик».

Когда вы щелкаете вкладку «Разработчик», на ленте отображается информация, которая интересует программистов (это вы!). На рисунке ниже показано, как выглядит лента, когда в приложении Excel выбрана вкладка «Разработчик».

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

1. Выберите ячейку

2. Выберите «Разработчик» «Код» ➪ «Записать макрос» или нажмите кнопку записи макроса в строке состояния. На схеме ниже показана кнопка записи макроса, которая всегда находится внизу приложения. Перед кнопкой есть надпись «Готово».

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

4. Введите имя макроса. Лучше использовать более информативное имя и также стараться избегать пробелов между ними. Вы можете назвать макрос NameAndTime

5. Щелкните поле «Сочетание клавиш» и введите Shift + N (для буквы N в верхнем регистре) в качестве сочетания клавиш. При назначении макроса ярлыка нужно быть осторожным. Использование клавиш быстрого доступа, таких как Ctrl + s, может перезаписать основную функцию клавиши быстрого доступа, которая изначально предназначена для сохранения документов.

6. Убедитесь, что для параметра «Сохранить макрос в» задано значение «Эта книга».

7. При желании вы можете ввести текст в поле «Описание».

8. Щелкните ОК.

9. Переместите указатель ячейки на ячейку ниже и введите следующую формулу: = СЕЙЧАС ()

10. Выберите ячейку с формулой и нажмите Ctrl + C, чтобы скопировать эту ячейку в буфер обмена.

11. Выберите «Главная» «Буфер обмена» «Вставить» значения (V).

12. Выделив ячейку даты, нажмите Shift + стрелка вверх, чтобы выбрать эту ячейку и ячейку над ней (содержащую ваше имя).

13. С помощью элементов управления в группе «Домашний шрифт» измените форматирование на «Полужирный» и установите размер шрифта в 16 пунктов.

14. Выберите «Разработчик» «Код» «Остановить запись».

Тестирование макроса

Теперь вы можете попробовать этот макрос и посмотреть, правильно ли он работает. Чтобы проверить макрос, перейдите в пустую ячейку и нажмите Ctrl + Shift + N. В мгновение ока Excel выполняет макрос. Ваше имя, текущая дата и время отображаются большими жирными буквами.

Другой способ выполнить макрос - выбрать «Разработчик» «Код» «Макросы» (или нажать Alt + F8), чтобы отобразить диалоговое окно «Макросы». Выберите макрос из списка (в данном случае NameAndTime) и нажмите «Выполнить». Перед выполнением макроса убедитесь, что вы выбрали ячейку, в которой будет храниться ваше имя.

Если вам интересно, как выглядит записанный макрос, нажмите Alt + F11, это откроет визуальный базовый редактор, затем в окне проекта щелкните папку модулей. Дерево развернется, чтобы отобразить Module1, который является единственным модулем в списке. проект. Затем дважды щелкните по модулю 1. На рисунке ниже показаны все, что вы записали на данный момент.

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

Сохранение книг, содержащих макрос

Если вы храните один или несколько макросов в книге, файл должен быть сохранен как тип файла с поддержкой макросов. Другими словами, файл должен быть сохранен с расширением XLSM, а не с обычным расширением XLSX.

Например, когда вы сохраняете книгу, содержащую ваш макрос NameAndTime, формат файла в диалоговом окне «Сохранить как» по умолчанию - XLSX (формат, который не может содержать макросы). Если вы не измените формат файла на XLSM, Excel отобразит предупреждение, показанное на рисунке ниже. Вам нужно нажать «Нет», а затем выбрать «Excel Macro-Enabled Workbook (* .xlsm)» из раскрывающегося списка «Сохранить как».

Макрос личной книги

Ранее мы видели, что во время записи макроса у вас есть возможность сохранить его в личной книге макросов. Это скрытая книга под названием "Личные". xls, который создается автоматически при сохранении в нем первого макроса. Он хранится в папке XLSTART и загружается автоматически при запуске Excel; Макросы в нем доступны из всех книг, то есть вы увидите их (перед ним Personal.xls!) в списке доступных макросов в диалоговом окне макросов в любой книге. Если вы записываете какой-либо макрос, который вы можете часто использовать с разными книгами, вам следует подумать о том, чтобы сохранить его в этой книге. Чтобы отредактировать или удалить любой макрос, который вы сохраняете в этой книге, вы должны сначала отобразить его.

В Excel выберите Windows ➩ Показать, а затем выберите книгу. Затем вы можете открыть соответствующий модуль для редактирования или удаления макроса. Чтобы сохранить в Personal.xls любой записанный вами макрос или процедуру VBA, которую вы написали в любой другой книге, откройте Personal.xls, откройте VBE, вырежьте и вставьте процедуру в модуль в этой книге.

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

Использование справки Vba

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

Вот два наиболее полезных способа доступа к онлайн-справке:

С помощью Office Assistant:

Самый быстрый способ найти справку по любой теме - с помощью помощника по Office. Чтобы получить справку по VBA, вы должны получить доступ к Office Assistant из VBE, а не из Excel. Как и в случае с Excel, вам часто нужно знать правильное ключевое слово, чтобы найти справку по теме. Однако в VBA это, как правило, не представляет проблемы, поскольку большую часть времени вы будете искать справку по элементу или функции языка VBA, которые распознает помощник Office. Обратите внимание, что во многих случаях вы можете получить как описание, так и пример изучаемой темы.

Использование окна полной справки для получения справки:

Вы можете получить доступ к полному окну справки (в котором есть две панели, одна с тремя вкладками) как минимум двумя способами. То, как вы туда попадете, определяет, что вы увидите на вкладке «Содержание». Лучший способ получить справку наивысшего уровня на вкладке «Содержание» (т.е. уровень, с которого вы можете получить доступ к справке по всему) - использовать следующий подход: Находясь в VBE, в Office Assistant введите «Метод справки» , »Щелкните« Поиск »и выберите« Метод справки (Excel) »в списке всплывающих тем. Это вызовет одну панель окна справки. Теперь щелкните значок «Показать» в верхнем левом углу (он выглядит как страница со стрелкой влево, указывающей влево, прикрепленной к ней), чтобы открыть вторую панель окна справки с тремя вкладками.

На вкладке «Содержание» разделы справки организованы как главы в книге, где каждая глава отмечена значком книги и описательным названием. Чтобы открыть список тем, включенных в главу, вы можете либо дважды щелкнуть значок книги для главы, либо щелкнуть значок плюса слева от нее. Глава может также включать разделы, отмеченные дополнительными значками книг, которые работают таким же образом. (Вы можете свернуть список разделов и тем в главе, щелкнув знак минус рядом со значком книги.)

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

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

Аригато!