1

ActiveX で Excel ファイルを開いて操作したい。私は他のプロジェクトで Python のWin32 拡張機能と Groovy のScriptomライブラリを使用して成功しましたが、今回は可能であれば純粋な Java でこれを行う必要があります。

Jacob Java COM Bridgeを試してみましたが、使い方が簡単でも単純でもなく、セルの値を取得することもできませんでした (これは Scriptom の基礎となるライブラリですが)。代替手段はありますか?

4

4 に答える 4

4

ジェイコブは本当にここでの仕事の道具です. COM と ActiveX がどのように機能するかについて、時間をかけて少し学習することをお勧めします。COM はかなりの成果ですが、難しいものです。VB のようなラッパーは簡単に思えますが (使用目的が限られているため)、まったく簡単ではありません。COM の学習に関する優れた本を持っていますが、その名前が今手元にありません...

IDispatch インターフェイス (これは、Excel の COM インターフェイスのほとんどが開発されているものです) について学びたいと考えています。それは厄介で厄介なインターフェイスです (実際に何が起こっているのかわからなくなるほど多くのことができるウイルスの 1 つです) - しかし、それを学ぶことが重要です.

1 つの領域 (つまり、セルから値を取得する) だけで問題が発生している場合は、Scriptom のソースを取得して、その動作を確認できます (オープン ソースです!)。

もう 1 つの提案は、VBA でコードのいくつかのテスト ケースを実装して、すべての戻り値を正しく検討していることを確認することです。Java アプリの 1 つで Excel の自動化を行っていたとき、Word の VBA から一般的なアルゴリズムを実装し、問題のケースに取り組みました。その後、Jacob に引き継ぐのは非常に簡単でした。

  • K
于 2008-10-08T01:19:05.297 に答える
0

同様のことを行うJIntegraもあります。コマーシャルも。そして、同様のことを行うJNIWrapperがあります。繰り返しますが、コマーシャルでもあります。

于 2008-10-08T01:07:53.837 に答える
0

http://www.nevaobject.com/_docs/_java2com/java2com.htmはどうですか-- これは商用ですが、うまく機能します。

于 2008-10-07T23:10:22.700 に答える
0

JExcelAPI を見たことがありますか? ActiveX を使用する代わりに、これは Excel ファイルを直接読み書きする Java ライブラリです。

あなたの質問に対する正確な答えではありませんが、特に純粋な Java ソリューションを探している場合は、問題も解決する可能性があります。

于 2008-10-08T00:08:16.263 に答える