Поделиться через


Решения VBA и Office в Visual Studio сравниваются

В Microsoft Visual Basic для приложений (VBA) используется неуправляемый код, который тесно интегрирован с приложениями Office. Проекты Microsoft Office, созданные с помощью Visual Studio, позволяют воспользоваться преимуществами платформы .NET Framework и средств разработки Visual Studio.

Сведения о типах решений Office, которые можно создать с помощью Visual Studio, см. в обзоре разработки решений Office (VSTO).

Сравнение

В следующей таблице приводится общее сравнение решений VBA и решений Office в Visual Studio.

Решения VBA Решения Office в Visual Studio
Использует код, который связан с конкретным документом и сохраняется с ним. Использует код, хранящийся отдельно от документа (для настроек на уровне документа) или в сборке, загруженной приложением (для надстроек VSTO).
Работает с объектными моделями Office и программными интерфейсами VBA. Предоставляет доступ как к объектным моделям Office, так и к платформа .NET Framework API.
Предназначен для записи макросов и упрощения процесса разработки. Предназначен для обеспечения безопасности, упрощения поддержки кода и использования полной интегрированной среды разработки (IDE) Visual Studio.
Хорошо подходит для решений, которые получают выгоду от тесной интеграции с Приложение Office ликации. Хорошо подходит для решений, которые пользуются полными ресурсами Visual Studio и платформа .NET Framework.
Имеет ограничения при использовании на предприятиях, особенно в области безопасности и развертывания. Предназначен для использования на предприятиях.

Некоторые задачи по-прежнему проще и быстрее выполнить с помощью VBA. В частности, VBA может быть необходимо использовать для:

  • настраиваемых функций для работы с листами.

  • записи макросов.

Объединение решений VBA и решений Office, созданных с помощью Visual Studio

Код VBA можно вызывать из решений Office, созданных с помощью Visual Studio. Также можно вызывать код в решениях Office, созданных с помощью Visual Studio, из VBA. Конкретная методика зависит от того, является ли ваше решение Office надстройкой VSTO или настройкой на уровне документа. Дополнительные сведения см. в разделе "Код вызова" надстроек VSTO из других решений Office и объединения настроек VBA и уровня документов.