close

Visual Basic для приложений

Перейти к навигации Перейти к поиску

Microsoft VBA (Visual Basic для приложений) — это макроязык Microsoft Visual Basic , используемый для программирования приложений Windows и включенный в несколько приложений Microsoft. VBA позволяет пользователям и разработчикам расширять функциональные возможности программ пакета Microsoft Office . Visual Basic для приложений — это почти полное подмножество Visual Basic 5.0 и 6.0.

Microsoft VBA встроен в приложения Microsoft Office, такие как Outlook , Word , Excel , Access и Powerpoint . Практически все, что можно запрограммировать в Visual Basic 5.0 или 6.0, также можно сделать в документе Office, с единственным ограничением: конечный продукт не может быть скомпилирован отдельно от документа, листа или базы данных, в которой он был создан; то есть он становится макросом (точнее супермакросом). Этот макрос можно установить или распространить, просто скопировав документ, презентацию или базу данных.

Его основная полезность заключается в автоматизации повседневных задач, а также в создании приложений и служб баз данных для рабочего стола. Он позволяет получить доступ к функциям событийно-ориентированного языка с доступом к Windows API .

Исходя из языка, основанного на Basic, он имеет сходство с языками, включенными в другие продукты автоматизации делопроизводства, такие как StarBasic и Openoffice .

Sub LoopTableExample

    Dim db как DAO.Database
    Dim rcs как DAO.Recordset

    Установить БД = CurrentDb
    Установите rcs = db.OpenRecordset("SELECT * FROM tblMain")

    Делать до rcs.EOF
        MsgBox rcs!ИмяПоля
        rcs.MoveNext
    петля

    rcs.Закрыть
    db.Закрыть
    Установить rcs = ничего
    Установить БД = Ничего
Конец сабвуфера

VBA можно использовать для создания определяемой пользователем функции для использования на листе Microsoft Excel:

Открытая функция BUSINESSDAYPRIOR(dt As Date) As Date

    Выберите день недели обращения(dt, vbMonday)
    Случай 1
        ПРЕДЫДУЩИЙ РАБОЧИЙ ДЕНЬ = dt -3
    Случай 7
        ПРЕДЫДУЩИЙ РАБОЧИЙ ДЕНЬ = dt -2
    Дело еще
        ПРЕДЫДУЩИЙ РАБОЧИЙ ДЕНЬ = dt -1
    Конец выбора
Конечная функция

VBA также имеет доступ к внутренним функциям Windows в той или иной степени и может получать доступ к ресурсам от расписаний до файлов для управления:

Sub GetDate ()

    MsgBox "Дата" и формат (сейчас(), "дд-мм-гггг")


Конец сабвуфера

Доступ к языку можно получить, войдя в меню инструментов . А еще есть MACRO и VISUAL BASIC EDITOR .

Будущее

Естественный следующий шаг в эволюции VBA — это переход от подмножества Visual Basic к платформе .NET . Microsoft не планирует в будущем вносить существенные улучшения в VBA. Несмотря на то, что он будет по-прежнему поддерживать предложенные лицензии VBA, VBA заменяется инструментами Microsoft Visual Studio для приложений (VSTA ) и инструментами Microsoft Visual Studio для Office (VSTO) . Studio Tools for Office ). Эти инструменты работают на платформе .NET .

С 1 июля 2007 г. Microsoft больше не предлагает новые лицензии VBA новым клиентам. Владельцы лицензии VBA смогут лицензировать новые решения от Microsoft.

Смотрите также