事象
DSによりExcel列の削除・追加処理を実施し、修正後のExcelファイルをローカルに格納して、手動で開く場合エラーが発生します。
エラーメッセージ
〇〇〇.xlsx'の一部の内容に問題が見つかりました。可能な限り内容を回復しますか?ブックの発行元が信頼できる場合は、「はい」をクリックしてください。
原因
製品が利用しているサードパーティーの Apache POI に不具合がある為です。
発生条件
下記の条件を満たす場合に発生します。
①操作対象のExcelシート内に、Excel関数、若しくはセル引用を利用しています。
<Excel関数を利用するイメージ>
<セル引用のイメージ>
②関数(或いはセル引用)に埋め込まれているセルの列番号により前の列に対して、DSで削除・追加の処理を実施し、関数(或いはセル引用)に埋め込まれているセルの列が移動される場合。
上記Excel関数の利用例に関しては、B列を削除することで、SUM関数に埋め込まれている"C"列は"B"列に移動しました。
対処方法
方法1
DSで列の削除・追加により、埋め込まれているセルの列が移動される関数(或いはセル引用)を一時的に削除し、列の削除・追加を実施後、削除した関数(或いはセル引用)を元の状態に戻すことで、本事象を解消することができます。
対策2
列の削除・追加処理に関しては、DSではなく、DAで直接Excelを操作する方法となります。
区分 | 発生Ver | 改修ID | 修正Ver |
不具合 | 10.7.0.4、11.1.0.4 | 1711040 |