Въведение във VBA - 1/3

Въведение във VBA - 1/3

Следваща >>

1) ОСНОВНИ СРЕДСТВА НА VBA. МАКРОСИ

1. Езикът VBA.
VBA е сравнително лесен език за програмиране, „вграден” в Microsoft Office, с помощта на който могат да се автоматизират определени действия, да се конструират приложения, решаващи всякакви задачи. VBA приема технологията на визуалното програмиране, като създава приложения и елементи за управлението им непосредствено на екрана и записва части от тях чрез MacroRecorder
2. Основни средства и възможности на VBA.
а) Обект;

VBA се отнася към езиците за обектно-ориентирано програмиране /ООП/ и проектирането на приложения става с помощта на обекти. (Но въпреки това VBA не се вмества точно в рамките на понятието ООП и затова обектният подход не играе много голяма роля в него).
Обектът е съдържание, включващо данни и код, което има определено поведение. Всички визуални обекти като работен лист (worksheet), диапазон (Range), диаграма (Chart), форма (userForm), се явяват объекти. В VBA има над 100 вградени обекта.
Във VBA се използва OLE - технологията на свързване и вмъкване на обекти, което позволява да се интегрират в приложенията елементи от други приложения. От 1996 г променя терминологията и OLE обектите се наричат ActiveX обекти.
б) Клас;
Класът е група от обекти с общи свойства и действия. Всеки обект се явява представител на даден клас. VBA работи с над 100 обекта, разположени йерархично.
Достъпът да обект става, като се изредят всички обекти над него в йерархията, разделени с точка.
Напр. Application.Workbooks("Архив").Worksheets("Лист1").Range("A1"). А ако текуща е работната книга „Архив”, то достатъчно е да използваме Worksheets("Лист1").Range("A1").
в) Методи;
Методите са действията, които могат да се извършват с обекта.
Синтаксис: Обект.Метод.
Напр. Application.Quit (за изход от приложението) или Worksheets("Лист1").Chartobjects.Delete (за изтриване на диаграма в работния лист „Лист1”).
г) Свойства;
Свойството е характеристика на обекта с определено име.
Синтаксис: Обект.Свойство = Стойност
д) Събития;
Това са определени действия. Когато се случат, се изпълняват зададените команди.
2. Макроси.
За да можем да работим с макроси трябва да бъде вмъкнато меню Developer. Това става от File -> Options ……………..
а) що е макрос;
Макросът представлява наименована последователност от команди, които се използват при извършването на еднотипни действия в различни задачи. Така вместо всеки път да се пишат тези команди е достатъчно да се напише името на макросът.
Макроси могат да се създават с помощта на макрорекордера и с помощта на VBA.
За да позволим използването на макроси в от Developer -> Macro Security се избира Enable All Macros
б) създаване на макрос;
Ще създадем един малък и лесен макрос.
Избираме от меню Developer комндата Visual Basic Editor (или Alt + F11) и се отваря прозорецът на VBA редактора. Вляво се виждат обектите в проекта, а вдясно се отваря прозорецът за въвеждане кода на макроса (Ако не е отворен, чрез двукратно щракване върху обекта ThisDocument ще се отвори).
Sub FirstMacros()
        MsgBox ("Моят първи макрос!")
End Sub

Със Sub и End Sub се означават началото и края на обособена част от програмния код, наречена процедура. Между тях стои командата за извеждане на кутия за съобщение, в която текстът е: ("Моят първи макрос!".
Затварянето на редактора на VBA и връщането към приложението става чрез:
File -> Close and Return to Microsoft Word (или Alt + Q)
в) записване на макрос;
Записването минава през четири етапа:
- Задаване на стартови условия за макроса;
Те се задават преди отваряне на макрорекордера, защото всичко, което се прави в документа след отварянето му се записва в кода на макроса. Тогава макросът ще има само ограничена област от действия.
- Задаване име на макроса;
Tools -> Macro -> Record New Macro
В диалоговия прозорец се записва името на макроса; дали достъпът до него ще става от лентите с менюта/инструменти или чрез клавишна комбинация; областта на действие на макроса и допълнителна информация.
- Изпълнение на действията, които се записват;
- Затваряне на макрорекордера /Стоп/.

Следваща >>