Visual Basic for Applications
За информацията в тази статия или раздел не са посочени източници. Въпросната информация може да е непълна, неточна или изцяло невярна. Имайте предвид, че това може да стане причина за изтриването на цялата статия или раздел. |
Visual Basic for Applications (VBA) е макроверсия на Microsoft Visual Basic, която се използва за програмиране на приложения, базирани на Microsoft Windows, и е включена към няколко програми на Microsoft.
Тия редове ги пиша на приливи и отливи още от мига, в който за първи път се срещнах с VBA. А това беше някъде 1997 год. Как ли би тлябвало да се казва книгата ми?! Вероятно "За VBA с любов".
За неподготвените стомаси това, което ще напиша, може да се окаже трудно смилаема храна. Но, както казват "Апетитът идва с яденето". Това в пълна сила важи за VBA. Удивителното е, че днес, 11.01.2019 г., тази статия е все още мъниче. Неразбирането на важността на познаването и използването на VBA ме тревожи още от 2000 год. или с други думи казано от времената на Office 97, Office 2002, 2003 и др. които имат в себе си интегриран VBA. За тези, които ще побързат да заключат, че говорим за нещо архаично, ще кажа, че VBA се поддържа и в най-новите Office пакети на Microsoft. Мога огговорно да кажа, че това е една реализация на гениална концепция на Microsoft, която в България няма голямо, да не кажа никакво приложение поради непознаването и. Доказателство за великолепния и замисъл и реализация е и това, че VBA се използва в Corel Draw, Photoshop, Autocad и др. Тук целта ми не е да направя енциклопедична справка по въпроса за VBA, а да покажа как практически той може да се използва. Но преди това. Защо VBA не се прилага? Защото не се познава. Защо не се познава?Защото не се изучава в училищата. Защо не се изучава в училищата? Защото не се познава.....И така - до безкрай и без изгледи този порочен кръг да бъде разкъсан с познатите средства. Японците имат прекрасна поговорка - Като закопчееш първото копче на ризата накриво и всички останали отиват накриво. И кое е първото закопчано накриво. Първото накриво закопчано копче по отношение на VBA в България, след което дори влакове дерайлират, банки фалират, болници се реанимират, калинки вегетират и т.н. е налагането на т.нар. локализирани версии на Office /Word, Excel, Access и др./ Слава богу, локализирани версии на Corel, Autocad, Photoshop аз не съм срещал, но без "закваската" на VBA for Office едва ли има някой, който да прилага VBA за работа с тях. Тъжно и икономически неефективно!
Мъча се всячески да избегна щампата на подобен род писания, която най-често включва посвещение, после следват благодарности, увод от автора, увод от редактора, рецензия от някое светило, мнения на читатели, колко велик е този труд и след това 1000 страници нативен код, където стриктно е описано КАК, но много често липсва ЗАЩО. И всичко това е подправено с невероятен програмистки хумор, който си разбират само авторите. Проблемът се задълбочава особено ако четете преведена на български компютърна литература, където преводачите са толкова "заклети", че превеждат Open като Отвори, Close като затвори, Save като Запомни и т.н. Впрочем, това беше една златна мина за издателствата, които се надпреварваха да издават съответни прави и обратни, компютърни и хартиени речници на компютърните термини, което до някъде беше добре. Добре беше, докато не се появиха локализираните версии на Word, Excel и т.н. на български и което беше най-страшно с тези версии първо обучавах учителите, а след това и децата. Но, както ще видите по-долу по този начин се получи един "вавилонски" език на който всеки си приказва разни неща на неговия си език и така не може да се стигне до същността и кулата VBA като в нашия случай се получава VVBA /Vavilon Visual Basic for Application/ не може да бъде строена успешно и на широк фронт.
Моля да ме извините, но се получи нещо като блог. Уверявам Ви! Има смисъл. Бързам да отправя първата си настойчива препоръка: Никога не работете с локализирани на български, руски, немски и пр. езици, а само с оригинални английски версии на програмите!
Но да хваним бика за рогата. Какво означава VBA или Visual Basic for Application. Няма да търсим буквален превод. Visual означава, че се работи с видими обекти. Basic означава, че това е нещо, което стои в основата, нещо като фундамент, върху който стъпва нашата сграда или конструкция. Application - това е или Word или Excel или Access или Corel или Photoshop или комбинации от тях, примерно Word + Excel или Excel + Corel и др. З това - следващия епизод, както казват в сериалите когато стане най-интересно.
Бързам да кажа, за хората, които "работят на компютър", че повечето от тях използват около 3% от възможностите му. Но това е нормално, като се знае, че използват и около 3% от мозъка си. Това не трябва да ги успокоява и още по-малко да се казва добре известната фраза демотивираща фраза "Аз си знам това, което ми трябва". Да се забягва в другата крайност, приписвана на Сократ или Демокрит "Аз знам, че нищо не знам" също не е полезно. Истината е някъде по средата и по-скоро, придържайки се към философските категории трябва да се опираме на Михай Еминеску, който казва, че сами трябва да си поставяме въпросите и сами трябва да си отговаряме. Да, VBA е точно за това, но в условията на един условно по-ограничен свят, който в действителност е много широк, какъвто е Word, Excel и т.н.