- - PR -
POI利用時のExcelファイル読込みエラー回避策
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-01-17 22:51
こんばんは。
POI利用時のExcelファイル読込みにて、 Excelセルの入力規則にてコンボボックス(リスト)を使用している場合、 コンボボックスの▼ボタンが表示されていると下記のようなエラーになります。 org.apache.poi.hssf.record.RecordFormatException: Unable to construct record instance, the following exception occured: null …以下略 ちなみに、コンボボックスを使用しない場合はうまくいきます。 また、各サイトで回避策を探しましたが、コンボボックスを消すという回避策しか出ていません。 このような現象を回避する方法はあるのでしょうか。 | ||||
|
投稿日時: 2006-01-18 01:24
こんばんは。
参照元のサイトを見ましたが、回避方法は「コンボボックスを消す」ではなく 「コンボボックスを使用しているセルからフォーカスを外した状態で元ファ イルを保存しておく」と書いてあります。 私が試したところフォーカスを外しておくだけで正常に読み込めましたが、こ の回避方法では問題があるのでしょうか? フォーカスの位置が気になるだけでしたら、読み込み後に HSSFCell#setAsActiveCell();を呼び出すことでも対応可能です。 | ||||
|
投稿日時: 2006-01-18 10:43
レスありがとうございます。
調査したところ、読み込むExcelのセルがコンボボックス(リスト)ではなく データ→フィルタ→オートフィルタON(項目絞り込み用) のコンボボックスでした。 これがあるとフォーカスをずらしても同様エラーになるようです。 未だ、原因不明で調査中です。 | ||||
|
投稿日時: 2006-01-18 11:57
解決しました。
どうやら、POI2.5のバグらしいです。 オートフィルタ使用のファイル読み込みでエラーになるようです。 POIを2.0 or 3.0 に代える事で回避できました。 ※POIの過去バージョンはこちらです。 http://archive.apache.org/dist/jakarta/poi/dev/bin/ |
1