2011-07-07 31 views
0

私は今30分間Web上を見ていて、それについての説明は見つかりません。ここに私の問題があります:apache poi外部参照または外部リンクを無効にする方法は?

私はpoiを使って200個のExcelファイルからいくつかのデータを解析し、その一部を新しいファイルに入れました。私はFormulaEvaluatorを使用してセルの評価を行い、セルを保持するかどうかを選択する前にそのセルの内容を知ります。
セル内の値だけでテストファイルをテストすると、プログラムは完璧に動作しますが、ファイルの山ほどでこのエラーが発生します。

"外部ブック名を解決できませんでした"

外部参照を無視して環境を設定して、外部参照で式を評価しないようにする方法はありますか?
私は必要なものは、参照が含まれていないので...

はあなただけでエラーをキャッチし、そのセルをスキップすることはできませんあなた

答えて

1

ありがとうございましたか!

POIにセル内の数式を評価するよう依頼したため、エラーが発生しました。その数式は別のファイルを参照しています。しかし、参照されているファイルをどこで見つけるかPOIには伝えていないので、それはオブジェクトです。

外部参照を持つセルを気にしない場合は、例外をキャッチして次のセルに移動します。

気をつけたら、POIにファイルを見つける場所を伝える必要があります。これを行うにはsetupEnvironment(String[],Evaluator[])メソッドを使用します。これにはワークブック名​​の配列と、それらのワークブックの評価者の配列を渡します。

+0

本当に良い点は、例外をキャッチするために私の心を完全にスリップしました。私は今夜​​それを試してみよう!ありがとう – Sephy

+1

私は例外をキャッチしましたが、問題は、評価者が最初に使用された/作成されたときに例外がスローされ、ファイルの残りの部分では機能しないようです... – Sephy

+0

順番に各セルを評価しようとするのではなく、すべてのワークブックを一度に実行しようとするよりも、私はそれがうまくいくと期待しています。 – Gagravarr

関連する問題