2

Visual Studio 2010のC#アプリケーションでVBAアセンブリを参照するにはどうすればよいですか?

「参照の追加」ダイアログボックスで見つかりません。

これが私がそれを必要とする理由です:

エラー1タイプ'VBA.Collection'が、参照されていないアセンブリで定義されています。アセンブリ'VBA、Version = 6.0.0.0、Culture = neutral、PublicKeyToken=null'への参照を追加する必要があります。..。

4

3 に答える 3

4

さまざまなアプリケーションに統合されたVBAのバージョンがたくさんあります。バージョン番号を見ると、プロジェクト+参照の追加、[参照]タブを使用して、c:\ windows \ system32\msvbvm60.dllを選択する必要があると思います。これがVB6のランタイムサポートモジュールです。実際、VBA名前空間にCollectionクラスがあります。

コンポーネントがVB6で記述されているかどうかを再確認してください。展開は興味深いかもしれません。

于 2010-09-05T05:57:43.857 に答える
1

「アセンブリ」は、一般的なDLLまたはEXEにパッケージ化された.NET関数のセットです。VBAは.NETではないため、アセンブリとしては存在しません。ただし、COM相互運用レイヤーを介してVBAコンポーネントにアクセスできます。

あなたが探しているのはこれだと思います

http://support.microsoft.com/?kbid=323737

于 2010-09-05T05:18:55.813 に答える
0

C#ではVBA.Collection型は本当に必要ありません。はるかに優れたコレクション構造を利用できます。Generic.List、Generic.Dictionaryなど、これらを見ると、必要なものが見つかる可能性が高くなります。

これらは強く型付けされているため、他の型にキャストすることはありません。VBAの「Variant」タイプが必要な場合は、HashTableを使用できます。

于 2010-09-05T05:18:52.287 に答える