Використання елементів управління в книгах і листах Microsoft Excel
Range("B9:E9").Select
Range("F5").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-4]:RC[-1])"
Selection.AutoFill Destination:=Range("F5:F9"), Type:=xlFillDefault
Range("F5:F9").Select
Range("B5").Select
End Sub
Дії, виконані по ходу створення макросу, записуються в одній або декількох рядках модуля мовою Visual Basic. Причому різні фрагменти модуля офарблюються в різні кольори: для виділення коментарів використовується зелений колір, для виділення ключових слів — синій, а для всіх інших фрагментів — чорний. У випадку запуску цього (або будь-якого іншого) макросу насправді відбувається запуск програми, записаної в кодах Visual Basic for Applications. При запуску модуля виконується кожен рядок програми, записаної на Visual Basic for Applications, і в результаті Excel виконує відповідні дії.
Коментарі
У текст програми, написаної мовою Visual Basic for Applications, можна включити коментарі (рядки, що будуть ігноруватися Excel при виконанні, потрібні для того, щоб повідомити, що виконує програма, або окремі рядки програми). Коментарі в тексті програми починаються з апострофа. У прикладі процедури, розглянутому вище, коментарі виглядають у такий спосіб:
' Рейтинг макрос
' Макрос записаний 19.12.2003 (computer)Тут Excel використовує як коментарі текст, введений раніше у рядках Імя макросу й Описание диалогового окна Запись макроса. Але можна додавати коментарі в будь-яке місце програми, ввівши спочатку апостроф, а потім потрібний текст. Коментарі дуже корисні при написанні складних програм, оскільки вони нагадують про те, що виконує та або інша процедура. Коментар може займати весь рядок або її частину, розташовуючи після оператора мови Visual Basic for Applications і починаючи з апострофа. При виконанні програми всі символи, що стоять за апострофом, будуть ігноруватися.
Заголовок і кінець процедури. Перед коментарем йде рядок, у якому записано:
Sub Рейтинг()
В останньому рядку записано:
End Sub
Це рядки заголовоку і кінеця процедури. Кожна процедура мовою Visual Basic for Applications починається з Sub або Function і закінчується рядком End Sub або End Function. У мові Visual Basic for Applications передбачено два типи підпрограм: процедури і функції. Функції схожі на функції, вбудовані в Excel. На вхід функції надходить деяке значення (або декілька значеннь), потім над цим значенням виконуються визначені дії і повертається результат обчислень. Процедура не повертає значення (хоча з неї можна передати значення за допомогою спеціальних операторів). Параметри, передані у функцію, вказуються в круглих дужках у заголовку. Підпрограма завершується рядком, що містить End Sub або End Function, що повідомляє Excel про те, що досягнуть кінець підпрограми. При досягненні кінця процедури управління передається в процедуру яка викликала цю процедуру. Якщо дана процедура не була викликана з іншої процедури, то керування передається програмі Excel.