Як писати макроси в Excel приклади. Автоматизація завдань за допомогою запису макросів - Excel. Дозволити використання макросів

Спочатку трохи про термінологію.

Макрос- це код, написаний вбудованою в Excel мовою VBA (Visual Basic for Application). Макроси можуть створюватися як вручну, і записуватися автоматично з допомогою так званого макрорекодера.

Макрорекодер- це інструмент в Excel, який крок за кроком записує все що ви виконуєте в Excel і перетворює це на код мовою VBA. Макрорекодер створює дуже докладний код (як побачимо пізніше), який ви зможете за необхідності відредагувати надалі.

Записаний макрос можна буде запускати необмежену кількість разів, і Excel повторить всі записані кроки. Це означає, що навіть якщо ви нічого не знаєте про VBA, ви можете автоматизувати деякі завдання, просто записавши свої кроки, а потім повторно використовувати їх пізніше.

Тепер давайте поринемо і подивимося, як записати макрос у Excel.

Відображення вкладки "Розробник" у стрічці меню

Перш ніж записувати макрос, потрібно додати на стрічку меню Excel вкладку "Розробник". Для цього виконайте такі дії:

В результаті на стрічці меню з'явиться вкладка "Розробник"

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

Тепер давайте запишемо дуже простий макрос, який вибирає комірку і вводить до неї текст, наприклад "Excel".

Ось кроки для запису такого макросу:

Вітаємо! Ви тільки що записали свій перший макрос в Excel. Хоча макрос не робить нічого корисного, але він допоможе нам зрозуміти, як працює макрорекордер в Excel.

Тепер давайте розглянемо код, який записав макрорекодер. Виконайте такі дії, щоб відкрити редактор коду:


Ви побачите, що як тільки ви натиснете кнопку "Виконати", текст "Excel" буде вставлений в комірку A2 і вибрано комірку A3. Це відбувається за мілісекунди. Але насправді макрос послідовно здійснив записані дії.

Примітка. Ви також можете запустити макрос за допомогою клавіш Ctrl + Shift + N (утримуйте клавіші Ctrl і Shift, а потім натисніть клавішу N). Це той самий ярлик, який ми призначили макросу під час його запису.

Що записує макрос?

Тепер перейдемо до редактора коду і подивимося, що в нас вийшло.

Ось кроки з відкриття редактора VB в Excel:

  1. У групі "Код" натисніть кнопку "Visual Basic".

Ви також можете використовувати комбінацію клавіш Alt+F11 і перейти до редактора коду VBA.

  • Панель меню: містить команди, які можна використовувати під час роботи з редактором VB
  • Панель інструментів- схожа на панель швидкого доступу Excel. Ви можете додати до неї додаткові інструменти, якими ви часто користуєтеся.
  • Вікно проектів (Project Explorer)- тут Excel перераховує всі книги та всі об'єкти в кожній книзі. Наприклад, якщо у нас є книга з 3 робочими листами, вона з'явиться у Project Explorer. Тут є кілька додаткових об'єктів, таких як модулі, форми користувача і модулі класів.
  • Вікно коду- Власне сам код VBA розміщується в цьому вікні. Для кожного об'єкта, зазначеного у провіднику проекту, є вікно коду, наприклад, робочі аркуші, книги, модулі тощо. У цьому уроці ми побачимо, що записаний макрос знаходиться у вікні коду модуля.
  • Вікно властивостей- Ви можете побачити властивості кожного об'єкта у цьому вікні. Я часто використовую це вікно для позначення об'єктів або зміни їх властивостей.
  • Immediate Window(Вікно попереднього перегляду) - На початковому етапівоно вам не знадобиться. Це корисно, коли ви хочете протестувати кроки або під час налагодження. Він не відображається за замовчуванням, і ви можете його відобразити, клацнувши вкладку «View» і вибравши опцію «Immediate Window».

Коли ми записали макрос "Введення тексту", в редакторі VB відбулися такі речі:

  • Було додано новий модуль.
  • Макрос був записаний з ім'ям, яке ми вказали - "ВведенняТексту"
  • У вікні коду додано нову процедуру.

Тому, якщо ви двічі клацніть на модулі (у нашому випадку модуль 1), з'явиться вікно коду, як показано нижче.

Ось код, записаний макрорекодером:

Sub ВведенняТексту() ВведенняТексту Макрос Range("A2").Select ActiveCell.FormulaR1C1 = "Excel" Range("A3").Select End Sub

У VBA, будь-який рядок, який слідує за " (знак апострофа) не виконується. Це коментар, який призначений тільки для інформаційних цілей. Якщо ви видалите перші п'ять рядків цього коду, макрос, як і раніше, буде працювати.

Тепер давайте пробіжимо по кожному рядку коду та опишемо що й навіщо.

Код починається з Sub, За яким слідує ім'я макросу і порожні круглі дужки. Sub – скорочення для підпрограми. Кожна підпрограма (також звана процедурою) у VBA починається з Subі закінчується End Sub.

  • Range("A2").Select - цей рядок вибирає комірку A2.
  • ActiveCell.FormulaR1C1 = "Excel" - цей рядок вводить текст "Excel" в активному осередку. Оскільки ми вибрали осередок A2 як перший крок, він стає нашим активним осередком.
  • Range("A3").Select - вибір осередку A3. Це відбувається, коли ми натискаємо клавішу Enter після введення тексту, результатом якого є вибір осередку A3.

Сподіваюся, що ви маєте деяке базове розуміння того, як записувати макрос в Excel.

Звертаємо увагу, що код, записаний через макрорекордер, як правило, не є ефективним та оптимізованим кодом. Макрорекордер часто додає непотрібні дії. Але це не означає, що не потрібно скористатися макрорекодером. Для тих, хто тільки вивчає VBA, макрорекордер може бути чудовим способом проаналізувати та зрозуміти як усе працює у VBA.

Абсолютний та відносний запис макросу

Ви вже знаєте про абсолютні та відносні посилання в Excel? Якщо ви використовуєте абсолютне посилання для запису макросу, код VBA завжди буде посилатися на ті ж осередки, які ви використовували. Наприклад, якщо ви виберете осередок A2 і введете текст "Excel", то кожен раз - незалежно від того, де ви знаходитесь на аркуші і незалежно від того, який осередок обраний, ваш код вводитиме текст "Excel" в осередок A2.

Якщо ви використовуєте параметр відносного посилання для запису макросу, VBA не буде прив'язуватись до конкретної адреси комірки. У цьому випадку програма "рухатиметься" щодо активного осередку. Наприклад, припустимо, що ви вже вибрали осередок A1, і ви починаєте запис макросу в режимі відносного посилання. Тепер ви вибираєте комірку A2, вводите текст Excel і натисніть клавішу Enter. Тепер, якщо ви запустите цей макрос, він не повернеться в осередок A2, натомість він переміщатиметься щодо активного осередку. Наприклад, якщо вибрано осередок B3, він переміститься на B4, запише текст "Excel" і потім перейде до осередку K5.

Тепер давайте запишемо макрос у режимі відносних посилань:

Макрос у режимі відносних посилань буде збережено.

Тепер зробіть таке.

  1. Виберіть будь-яку комірку (крім A1).
  2. Перейдіть на вкладку "Розробник".
  3. У групі "Код" натисніть кнопку "Макроси".
  4. У діалоговому вікні "Макрос" натисніть на збережений макрос "ВідносніПосилання".
  5. Натисніть кнопку "Виконати".

Як ви помітите, макрос записав текст "Excel" не в осередку A2. Це сталося, тому що ви записали макрос у режимі відносного посилання. Таким чином, курсор переміщається щодо активного осередку. Наприклад, якщо ви зробите це, коли вибрано осередок B3, він увійде в текст Excel - осередок B4 і в кінцевому підсумку вибере осередок B5.

Ось код, який записав макрорекодер:

Зверніть увагу, що в коді немає посилань на осередки B3 або B4. Макрос використовує Activecell для посилання на поточну комірку та усунення щодо цієї комірки.

Не звертайте увагу на частину коду Range(A1). Це один із тих випадків, коли макрорекодер додає непотрібний код, який не має жодної мети і може бути вилучений. Без нього код працюватиме чудово.

Що не можна зробити за допомогою макрорекодера?

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

  • Ви не можете виконати код без вибору об'єкта. Наприклад, якщо ви хочете, щоб макрос перейшов на наступний робочий лист і виділив всі заповнені осередки в стовпці A, не виходячи з робочої таблиці, макрорекодер не зможе цього зробити. У таких випадках вам потрібно вручну редагувати код.
  • Ви не можете створити функцію користувача за допомогою макрорекордера. За допомогою VBA ви можете створювати функції користувача, які можна використовувати на робочому аркуші як звичайні функції.
  • Ви не можете створювати цикли за допомогою макрорекордера. Але можете записати одну дію, а цикл додати вручну до редактора коду.
  • Ви не можете аналізувати умови: ви можете перевірити умови коду за допомогою макрорекордера. Якщо ви пишете код VBA вручну, ви можете використовувати оператори IF Then Else для аналізу умови та запуску коду, якщо true (або інший код, якщо false).

Розширення файлів Excel, які містять макроси

Коли ви записуєте макрос або вручну записуєте код VBA в Excel, необхідно зберегти файл з розширенням файлу з підтримкою макросів (.xlsm).

До Excel 2007 був достатній один формат файлу – .xls. Але з 2007 року xlsx був представлений як стандартне розширення файлу. Файли, збережені як.xlsx, що неспроможні містити у собі макрос. Тому, якщо у вас є файл з розширенням.

Якщо ви оберете "Ні", Excel зберігає файл у форматі з підтримкою макросів. Але якщо ви натиснете "Так", Excel автоматично вилучить весь код з вашої книги та збереже файл як книгу у форматі .xlsx. Тому, якщо у вашій книзі є макрос, потрібно зберегти його у форматі.xlsm, щоб зберегти цей макрос.

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

При записі макросу записуються всі дії, описані в Visual Basic для програм (VBA) код. Ці дії можуть включати введення тексту або чисел, натискання осередків або команд на стрічці або меню, форматування осередків, рядків або стовпців, а також імпорт даних з зовнішнього джерела, наприклад Microsoft Access. Програма Visual Basic (VBA) - це підмножина потужної мови програмування Visual Basic, яка входить до більшості програм Office. Незважаючи на те, що VBA забезпечує можливість автоматизації процесів між програмами Office, вам не потрібно знати код VBA або програмне програмування, якщо це потрібно.

Важливо знати, що з запису макросу реєструються майже всі ваші дії. Тому якщо ви припуститеся помилки, наприклад натиснете не ту кнопку, засіб запису макросів зареєструє цю дію. У такому випадку можна знову записати всю послідовність або змінити код VBA. Тому перед записом процесу слід добре опрацювати його. Чим точніше ви запишете послідовність, тим ефективніше працюватиме макрос.

Розробник, яка за замовчуванням прихована, тому спочатку потрібно увімкнути її. Для отримання додаткових відомостей див. статтю Відображення вкладки "Розробник" .

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

На вкладці Розробникнатисніть Макроси, щоб переглянути макроси, пов'язані з книгою. Крім того, можна натиснути клавіші ALT+F8. При цьому відкриється діалогове вікно Макрос.


Увага:

Відомості про параметри безпеки макросів та їх значення.

Макроси можна запускати у різний спосіб, наприклад, за допомогою клавіш, графічного об'єкта, панелі швидкого доступу, кнопки або навіть при відкритті книги.

За допомогою редактора Visual Basic можна змінювати макроси, приєднані до книги.

    призначити макрос.

    У полі Призначити макросу

Дізнайтеся, як вмикати та вимикати макроси у файлах Office.

Натисніть клавіші ALT+F11.

Робота із записаним кодом у редакторі Visual Basic (VBE)

За допомогою редактора Visual Basic (VBE) ви можете додавати до записаного коду власні змінні, керуючі структури та інші елементи, які не підтримують засіб запису макросів. Оскільки засіб запису макросів фіксує майже кожен крок, який виконується під час запису, може також знадобитися видалити непотрібний код. Перегляд записаного коду – чудовий спосіб навчитися програмувати на VBA або відточити свої навички.

Приклад зміни записаного коду можна знайти у статті Початок роботи з VBA в Excel.

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

Перед записом макросів корисно знати наступне:

    Макрос, записаний для роботи з діапазоном Excel, виконуватиметься лише для осередків цього діапазону. Тому якщо ви додасте в діапазон новий рядок, макрос не застосовуватиметься до неї.

    Якщо вам потрібно записати довгу послідовність завдань, радимо замість цього використовувати кілька дрібніших макросів.

    У макросі можуть бути і завдання, які стосуються Excel. Процес макросу може охоплювати інші програми Officeта інші програми, які підтримують Visual Basic для програм (VBA). Наприклад, ви можете записати макрос, який спочатку оновлює таблицю в Excel, а потім відкриває Outlook для її надсилання електронною поштою.

Макроси та засоби VBA знаходяться на вкладці Розробник, яка за замовчуванням прихована, тому спочатку потрібно увімкнути її.

    Перейдіть до розділу Налаштування > Excel... Панель інструментів & > стрічки.

Щоб записати макрос, дотримуйтесь інструкцій нижче.

Робота з макросами, записаними в Excel

На вкладці Розробникнатисніть Макроси, щоб переглянути макроси, пов'язані з книгою. При цьому відкриється діалогове вікно Макрос.

Примітка:Макроси не можна скасувати. Перш ніж вперше запускати записаний макрос, збережіть книгу або створіть її копію, щоб запобігти внесенню небажаних змін. Якщо вас не влаштовують результати виконання макросу, ви можете закрити книгу, не зберігаючи її.

Нижче наведено додаткову інформацію про роботу з макросами в Excel.

Дізнайтеся, як вмикати та вимикати макроси в Excel для Mac.

Якщо книга містить макрос VBA, який потрібно використовувати деінде, цей модуль можна скопіювати в іншу книгу за допомогою редактора Microsoft Visual Basic.

Призначення макросу об'єкту, фігурі або графічному елементу

    На аркуші клацніть правою кнопкою миші об'єкт, малюнок, фігуру або елемент, якому потрібно призначити існуючий макрос, а потім виберіть команду призначити макрос.

    У полі Призначити макросувиберіть макрос, який потрібно призначити.

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

Ви можете призначати макроси форм та елементів ActiveX на аркуші.

Відкриття редактора Visual Basic

На вкладці Розробникнатисніть Visual Basicабо виберіть Сервіс > Макрос > Редактор Visual Basic.

Дізнайтеся, як знайти довідку щодо елементів Visual Basic.

додаткові відомості

Ви завжди можете поставити запитання спеціалісту Excel Tech Community , попросити допомоги у спільноті Answers community , а також запропонувати нову функціюабо покращення на веб-сайті

Грамотно організувати процес роботи в екселі допоможуть такі об'єкти, як макроси Excel.

Розглянемо докладніше всі особливості роботи з цими об'єктами у пакеті програм MS Office.

Завдяки використанню макросів, кожен осередок вашого документа може бути автоматизований. Це відбувається завдяки тому, що користувач записує всі дії під час їх створення.

Що таке макроси і навіщо вони потрібні

З макросами можна працювати в будь-якій програмі пакета MS Office. Насамперед вони потрібні для того, щоб грамотно організувати роботу користувача у програмі.

Вони необхідні, щоб не виконувати однотипні завдання та дії по кілька десятків разів.

Їх створення та використання допоможе суттєво заощадити час та максимально автоматизувати роботу у програмі.

Важливо!Завдяки створеному макросу можна миттєво виконувати роботу, тоді як виконання вручну займало б багато часу.

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

З поняттям макросу можна також зіткнутися у програмі Ворд, але в Екселі він має кілька переваг:

  • По-перше, він поєднує всі інструкції в один повний сценарій виконання, що дозволяє оптимізувати навантаження на програму та почати працювати швидше;
  • Викликати його можна за допомогою клавіші на панелі інструментів або за допомогою спеціальної комбінації клавіш . Це дозволить користувачеві не відриватися від клавіатури у процесі роботи;

Створення власних макросів в Excel 2010, 2007, 2013

Розглянемо докладніше приклади створення Excel 2007, 2013:


  • Відкрийте документ, з яким працюєте, і для якого хочете створити макрос. До речі, кожен осередок, над яким проводиться дія має бути опрацьована;
  • Відкрийте вкладку розробника у стрічці. Для цього відкрийте пункт меню "Файл" і відкрийте параметри, як показано на малюнку;

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

  • Тепер можна перейти безпосередньо до створення макросу користувача. Після його створення, кожна комірка буде автоматизована – це означає, що будь-яка комірка документа буде виконувати однотипну дію, яку вкаже користувач;
  • Знайдіть у вкладці розробника спеціальну клавішу створення. Її розташування вказано малюнку нижче;

  • Натисніть клавішу. З'явиться вікно створення, в якому необхідно вказати ім'я, поєднання клавіш, за допомогою яких він увімкнеться. Також можна додати короткий опис функціонування макросу. Це необхідно зробити, якщо у вас їх дуже багато, щоб не заплутатися;

  • Далі натисніть "ОК" . Вікно закриється та розпочнеться процес запису. Щоб зупинити записування, натисніть відповідну клавішу на панелі керування;
  • Тепер почніть виконувати ті дії, які будуть записані до макросу. Кожен осередок у своїй може заповнюватися певними даними.
    Можна також працювати тільки з одним осередком, після запису та включення макросу цей же осередок буде записуватися згідно з зазначеним алгоритмом;
  • Не забудьте натиснути кнопку зупинки запису даних. Після виконання всіх наведених вище дій він буде записаний і збережений у програмі.

Як включати та працювати з макросами в Excel

Для цього дотримуйтесь наведеної нижче інструкції:


  • На вкладці розробника знайдіть кнопку під назвою «Макроси». Натисніть на неї;

  • Виберіть потрібний макрос зі списку і натисніть кнопку «Виконати» ;
  • Також запустити необхідний макрос можна за допомогою клавіш, яке було вказано користувачем на початковому етапі його створення;
  • Після натискання кнопки виконати всі дії, які були зроблені під час запису, будуть виконані повторно.

Макрос найзручніше використовувати, коли певний осередок потребує багаторазового копіювання.

Створення та видалення макросів

Макроси створюються за допомогою мови програмування під назвою Visual Basic (або просто абревіатура VB).

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

Вперше технологія створення макросів у програмі Ексель була вдосконалена і стала доступною для використання простими користувачами у версії 2007-го року.

Найзручніше їх створювати у таких версіях Ворда: 2007, 2010, 2013.

Меню макросів

Макрос складається з про макрооператорів. Макрооператори - це той набір дій, які він повинен виконати в установленому користувачем порядку.

Існую різні типиоператорів.

Деякі навіть можуть виконувати дії, пов'язані з виконанням.

У той самий час майже дев'яносто відсотків всіх представлених у програмі макрооператорів виконують функції стандартних клавіш і значків на панелі інструментів програми.

Таким чином кожен осередок буде виконувати свою роботу.

Найпростіший спосіб, щоб почати створення власного макросу - це відкрити засіб запису.

Процес створення зводиться до того, що користувачеві необхідно запустити записувальне засіб, потім повторити всі дії, які слід автоматизувати.

Макрос їх переведе в мову програмування і запам'ятає всі виконані користувачем команди.

Щоб видалити макрос, виконайте інструкції:


  1. Відкрийте вікно керування за допомогою кнопки «Макроси» на головній вкладці розробника;
  2. Виберіть необхідний об'єкт і в правій частині вікна натисніть кнопку видалення;

Кожен користувач стикався з тим, що іноді в Excel не знайти відповідних інструментів, які б відповідали потребам. При всьому достатку можливостей Excelіноді не можна автоматизувати розв'язання деяких завдань, адже досконалості немає меж. Ідеальне рішення - це надання можливості користувачеві самому створювати свої специфічні інструменти. Для цього було створено макроси.

Написання макросів у Excel

Код макросу Excel написаний мовою Visual Basic for Application (VBA), яке виконує інструмент програми, якого він приєднаний. Більшість цих інструментів не доступна на рівні вікна програми Excel. Як написати макрос

Тепер продемонструємо на прикладі інформацію про те, як писати, редагувати та виконувати код макросу.

Щоб написати макрос:


Примітка. Якщо в головному меню відсутня закладка «РОЗРОБНИК», тоді її необхідно активувати в налаштуваннях: «ФАЙЛ»-«Параметри»-«Налаштувати стрічку». У правому списку «Основні вкладки:» активуйте галочкою опцію «Розробник» та натисніть кнопку ОК.



Можливості макросів в Excel

Макроси дозволяють автоматизувати процеси роботи з документами і не тільки… Вони можуть одночасно виконати тисячі інструментів за одну операцію (навіть по одному кліку мишкою). Таким чином, розширюються можливості роботи з програмою.

За допомогою макросів користувач може створити свій інструмент, якого йому бракує в арсеналі програми Excel. Наприклад, коли потрібно автоматично виділити кожен другий рядок одним кліком. Або потрібно одночасно створити одразу певну кількість копій певного робочого листа. Список потреб користувачів у автоматизації процесів роботи можна продовжувати до безкінечності.

Якби не було можливості створювати макроси у всіх програмах, що входять до пакета MS Office. Те безліч операцій у процесі рутинної роботи користувачам доводилося б виконувати вручну (виділяти через один рядок клацаючи по кожному другому заголовку мишкою або копіювати вставляти по одному аркушу). Ручна роботау разі призводити до втрати величезної кількості часу, а гіршому – веде до помилок і навіть втрати цінних даних.

Можливість створювати макроси та автоматизувати робочі процеси береже вашу роботу від зайвих втрат часу та виникнення помилок. Далі розглянемо, як створити макрос, який безпомилково та автоматично виконати рутинну роботув один клік мишкою. Так само розглянемо, в яких місцях робочої книги Excel можна створювати та зберігати макроси. Як їх запустити та виконати, а також як їх максимально оптимізувати під свої потреби?

Excel надає великий та багатий арсенал інструментів для зберігання та обробки величезної кількості інформації з даними. Хоча для найуніверсальнішої аналітичної програми Excel – зберігання даних саме собою менш цікаве, ніж можливість їх обробляти, структурувати та аналізувати з презентацією у звітах. Для цих цілей служить найсильніший аналітичний інструмент обробки даних такий як «Зведені таблиці». Але його можна ще більше вдосконалити за допомогою макросів. І тоді можливості зведених таблиць не знають меж.

Стаття призначена для людей, які хочуть навчитися писати програми на вбудованому Excel Visual Basic (VBA), але абсолютно не знають що це таке.

Для початку – кілька слів про те, навіщо це потрібно. Засіб VBA в MS Excel, представляє нам універсальний інструмент для швидкого і точного вирішення будь-яких індивідуальних завдань користувача в MS Excel . Можна, звичайно, використовувати і вбудовані в MS Excel функціїяких безліч, проте вони далеко не завжди вирішують поставлене завдання.
Отже, створимо для прикладу найпростішу програму. Будемо використовувати MS Excel 2007. Відкрийте MS Excel, натисніть "зберегти як" і збережіть файл Вашої програми, натиснувши "Книга ексель з підтримкою макросів".


Далі необхідно увімкнути вкладку "Розробник". Для цього натискаємо "Параметри Excel"

Ставимо галочку на "Показувати вкладку "Розробник" на стрічці"


Після цього на стрічці, у верху листа Excel, з'явиться вкладка "Розробник", яка містить інструменти для створення VBAмакросів.
Уявімо собі невелике завдання - припустимо ми маємо 2 числа, нам необхідно їх скласти і за отриманою сумою отримати значення з нашої таблиці.
Поставимо в комірки Листа1 наступні значення:


на Листе2 заповнимо осередки, створивши таблицю з 2 стовпців


Далі перейдемо на Лист1, натиснемо на вкладку "Розробник", "Вставити", на ній виберемо кнопку
і намалюємо кнопку на Листе1, після чого відразу з'явиться вікно "Призначити макрос об'єкту", в якому вибираємо "Створити"

Після цього відкриється редактор Visual Basic, і автоматично напишеться найменування процедури, яка буде виконуватись під час натискання кнопки. Під назвою процедури впишемо наступний код:


Код виконає такі дії:

  • MsgBox ("Це мій перший Макрос!") - повідомлення
  • Змінної q надається значення осередку на Листе1, з координатами 2 рядок, 2 стовпець
  • Змінної w надається значення осередку на Листе1, з координатами 3 рядок, 2 стовпець
  • У комірку на Листі1, з координатами 4 рядок, 2 стовпець, записується сума q+w



Далі отримаємо значення стовпця з Листа2, яке розташоване на тому ж рядку де значення нашої суми збігається зі значенням стовпця А.
Введемо наступний код:


та отримаємо при натисканні на кнопку наступний результат:


з результату видно, що макрос підібрав число з таблиці на Листе2 відповідно до нашої суми.
Не буду вдаватися до подробиць цього хитрого коду, оскільки мета цієї статті - почати писати макроси. Для VBA в інтернеті є маса ресурсів, з прикладами та роз'ясненнями, хоча для автоматизації розрахунків цілком вистачить обсягу інформації у довідці.

Таким чином, за допомогою VBA можливо автоматизувати розрахунок будь-якої складності та послідовності. Довідкові таблиці можна копіювати з різних літератур на окремі аркуші Excel і писати послідовний розрахунок з кнопками.