次の方法で共有


VBA ソリューションと Visual Studio の Office ソリューションの比較

Microsoft Visual Basic for Applications (VBA) では、Office アプリケーションと密接に統合されたアンマネージ コードを使用します。 Visual Studio 2010 を使用して作成された Microsoft Office プロジェクトでは、.NET Framework および Visual Studio のデザイン ツールを利用できます。

Visual Studio 2010 を使用して作成できる Office ソリューションの種類については、「Office ソリューションの開発の概要」を参照してください。

比較

次の表は、VBA ソリューションと Visual Studio の Office ソリューションの基本的な相違点を示しています。

VBA ソリューション

Visual Studio の Office ソリューション

コードは特定の文書に接続し、文書と共に永続化されます。

コードは、文書と別に格納されるか (ドキュメント レベルのカスタマイズの場合)、アプリケーションによって読み込まれるアセンブリ内に格納されます (アプリケーション レベルのアドインの場合)。

Office オブジェクト モデルと VBA API を操作します。

Office オブジェクト モデルと .NET Framework API にアクセスできます。

マクロの記録と開発作業の簡素化を目的に設計されています。

セキュリティ、簡単なコード保守、および Visual Studio 統合開発環境 (IDE) の完全な利用を目的に設計されています。

Office アプリケーションとの密接な統合 (IDE、メニュー、ツール バー ボタンなど) からメリットを得られるソリューションに適しています。

Visual Studio と .NET Framework のリソースをすべて利用できるソリューションに適しています。

エンタープライズに関し、特にセキュリティや配置について制限があります。

エンタープライズでの利用を目的に設計されています。

処理によっては、VBA を使用した方が簡単にすばやく作業できます。 特に次の作業の場合、今までどおり VBA を使用します。

  • カスタム ワークシート関数

  • マクロの記録

VBA ソリューションと Visual Studio を使用して作成された Office ソリューションの結合

Visual Studio を使用して作成された Office ソリューションから VBA コードを呼び出すことも、Visual Studio を使用して作成された Office ソリューションのコードを VBA から呼び出すこともできます。 呼び出しの方法は、Office ソリューションがアプリケーション レベルのアドインであるかドキュメント レベルのカスタマイズであるかによって異なります。 詳細については、「他の Office ソリューションからのアプリケーション レベルのアドインのコードの呼び出し」および「VBA とドキュメント レベルのカスタマイズの結合」を参照してください。

参照

概念

Office ソリューションの開発の概要

他の Office ソリューションからのアプリケーション レベルのアドインのコードの呼び出し

VBA とドキュメント レベルのカスタマイズの結合

ドキュメント レベルのカスタマイズのアーキテクチャ

アプリケーション レベルのアドインのアーキテクチャ

Office ソリューションのセキュリティ保護

その他の技術情報

はじめに (Visual Studio での Office 開発)