* Въведение във VBA за Microsoft Office
Публикувано на 26 септември 2015 в раздел Макроси VBA.
Повечето примери, които ще покажем с VBA, ще са в различни продукти на Microsoft Office. За нашия първи пример ще използваме Excel, но той би работил в която и да е Office друга програма. Преди да започнем, трябва да добавим "Developer" менюто. Това става като отидете на File > Options > Customize Ribbon, добавете отметка на Developer и натиснете ОК. Последователността е показана с червени стрелки на следната картинка:
Ще видите ново меню "Developer" с редица контроли. Първият бутон е "Visual Basic" - с него отваряме редактора на VBA:
По-бърз начин да направим това е чрез клавишната комбинация ALT+F11. Вътре в редактора ще видите, че вече има два обекта - Sheet1 и ThisWorkbook. Sheet1 очевидно е стартовата таблица в новия документ - ако добавите още таблици, те ще се появят като обекти в списъка. ThisWorkbook е обект за документа като цяло. Когато маркирате едно от тях, ще видите че под тях се появяват различни опции в "Properties". Ако цъкнете два пъти с левия бутон на мишката върху обект, вдясно ще се отвори текстови редактор за писане на код. Ако пишете код в обекта "Sheet1", той ще има ефект само върху таблицата Sheet1. Ако пишете код в ThisWorkbook, той ще има ефект върху всички таблици в документа.
Нека напишем нашата първа VBA програма. Отворете Sheet1 и напишете следния код:
Sub HelloWorld() MsgBox "Hello World!" End Sub
За да го изпълните, натиснете триъгълника в лентата с инструменти. Алтернативно може да използвате Run > Rub Sub/UserForm от главното меню или (за най-бързо) просто натиснете F5 от клавиатурата.
Вашата първа програма ще се изпълни. В случая тя е просто един диалогов прозорец (MsgBox) с надпис "Hello World!" и бутон OK:
Нека се върнем към кода. "Sub" е съкратено от Subroutine или на български език "Подпрограма". Кодът на всяка подпрограма се намира между Sub и неговия съответстващ End Sub оператор. HelloWorld е името на нашата подпрограма. Празните скоби показват, че тази подпрограма не приема никакви входни параметри - по нататък ще пишем подпрограми, които приемат такива. MsgBox "Hello World!" е кода на нашата подпрограма, който вече знаем какво прави. Тук може да дефинирате променливи и да добавяте друг програмен код. Нека например пуснем един от елементарните примери за аритметична операция от предишната статия. Променете кода на вече написаната подпрограма по следния начин:
Sub HelloWorld() Dim A As Integer, B As Integer A = 5 B = 6 MsgBox A + B End Sub
Като изпълните програмата ще видите диалогов прозорец с числото 11. Изпробвайте примерите от предишната статия, като отпечатвате резултата от тях в MsgBox.
Добави коментар