3

私は Excel 2003 の 'Web サービス ツールキット' を使用して、VBA 経由で外部 Web サービスに接続するスプレッドシートを作成しています。

(つまり、「ツール」メニューに「Web サービス参照...」項目を追加する Web サービス ツールキットをインストールします。次に、Web サービス URL への参照を設定すると、ツールキットは必要なプロキシ クラスを VBA に書き込みます。 Web サービス メソッドが VBA に表示されます。)

Excel 2007 には、この 'Web Services Toolkit' がありません。少なくとも、同様のものは見つかりません。私の Excel 2003 シートは 2007 年に正常に動作するので、必要なフックがどこかにあることに注意してください。

私の質問は、Excel 2007 で外部 Web サービスと対話するための承認された方法は何ですか? ウェブ上で役立つものが見つかりませんか?

ありがとう...

SAL

4

1 に答える 1

4

いくつかのオプションがあります:

1) Microsoft Office Soap Type Library v3.0 (前述)。素晴らしくシンプルで、VBA でうまく動作しますが、WS-Security をサポートしていないため、まったく役に立ちません。WS-Security なしで SOAP を使用している場合は、時間を無駄にしています。

2) COM Interop を使用して Excel に公開された C# lib。VBA で使用するアセンブリを公開するのは比較的簡単で、VBA で WSE 3.0/WCF を使用できます。アセンブリには厳密な名前が必要です。

3) Visual Studio テンプレート。これらのテンプレートは、C# (またはその他の CLR 言語) をアセンブリとしてスプレッドシート内に統合します。Excel (または Word、PowerPoint など) から .NET フレームワークへの完全なアクセスを可能にする、最適な統合形態。ただし、テンプレートは Visual Studio Team Suite でのみ使用できます。

セキュリティを追加する場合 (HTTPS のみであっても)、MMC とその証明書スナップインを回避していることを確認する必要があります。必要な CA を証明書ストアに追加して、.NET が混乱し始めないようにする必要があります。

于 2009-06-22T14:13:20.250 に答える