Programista Visual Basic for Applications lub VBA zwykle współpracuje z określoną edycją VBA Microsoft Visual Basic. Visual Basic to język programowania zorientowany obiektowo z własnym interfejsem opartym na systemie Windows, który jest popularny do tworzenia szerokiej gamy aplikacji komputerowych firmy Microsoft. Visual Basic for Applications jest dostosowany do tworzenia konkretnych aplikacji, niezależnie od tego, czy są to zasoby biurowe, programy graficzne, programy do sortowania plików, czy jakiekolwiek inne programy oparte na systemie Windows.
Na poziomie ogólnym programiści VBA są odpowiedzialni za używanie VBA do tworzenia istniejących aplikacji lub opracowywania nowych projektów. Muszą wiedzieć, jak korzystać ze wszystkich części złożonego interfejsu Visual Basic, a także jak korzystać z bibliotek dołączanych dynamicznie (DLL), aby zapewnić referencje dla modułów kodu. Muszą również wiedzieć o modelach obiektów, które są specyficznymi konstrukcjami języka używanymi przez Visual Basic do pracy z aplikacją.
Programistom VBA może być dość trudno określić konkretny model obiektowy dla istniejącej aplikacji. Ten element oprogramowania został w nim zakodowany przez oryginalnych twórców. Programista VBA może użyć czegoś, co nazywa się rejestratorem makr, który może pomóc w odkrywaniu części modelu obiektowego. Niektóre narzędzia do debugowania mogą być również przydatne w tym procesie.
Niektóre z zadań kognitywnych najwyższego poziomu dla programistów VBA obejmują ocenę modelu obiektowego oraz analizę składni i logiki istniejącego kodu. Osoby te mogą wielokrotnie uruchamiać aplikacje oparte na języku Visual Basic lub Windows, aby rozszyfrować działanie kodu w czasie wykonywania. Mogą korzystać z szeroko zakrojonego debugowania lub testowania, aby dowiedzieć się więcej o działaniu określonego oprogramowania.
Aby zarządzać złożonym zestawem komunikacji z aplikacjami, programista VBA może używać narzędzi takich jak zasób automatyzacji OLE. Tego typu narzędzie pomaga użytkownikom przyjrzeć się, w jaki sposób aplikacje współdzielą funkcje. Tutaj znowu ważna jest natura Microsoft Visual Basic jako języka zorientowanego obiektowo. Niektóre funkcje kodu można opisać jako „obiekty automatyzacji”, które czasami są współużytkowane przez wiele aplikacji.
Programista VBA często będzie odpowiedzialny za przyjrzenie się działaniu określonego programu i przedstawienie wyników w razie potrzeby. Ten profesjonalista może zostać wezwany do manipulowania różnymi określonymi fragmentami programu lub do zmieniania go na różne sposoby. Eksperci VBA na ogół pomagają zespołowi IT zarządzać niezbędnymi zmianami w zestawie aplikacji.