作成日: 2026/03/25 最終更新日: 2026/08/19
文書種別
不具合
状況
修正済み
詳細
パスワードによってシートが保護されたExcelファイルを用意します。OpenExcelメソッドにTruncateEmptyRowsAndColumnsメンバーを指定してExcelファイルをインポートしてからエクスポートすると、パスワードの入力なしでシートの保護を解除できてしまいます。Excelファイルのインポート&エクスポートでもパスワードによるシートの保護が有効なままになるのが本来の動作です。
回避方法
Service Pack 4(v17.0.4805.2022/v17.4.0)で修正済み。
Service Pack 4を適用せずに対処する方法としては、OpenExcelメソッドでTruncateEmptyRowsAndColumnsを指定せずにコーディングでデータの存在しない行列を除外する方法が考えられます。
//fp.OpenExcel("test.xlsx", FarPoint.Excel.ExcelOpenFlags.DocumentCaching
// | FarPoint.Excel.ExcelOpenFlags.TruncateEmptyRowsAndColumns);
fp.OpenExcel("test.xlsx", FarPoint.Excel.ExcelOpenFlags.DocumentCaching);
fp.ActiveSheet.RowCount = fp.ActiveSheet.NonEmptyRowCount;
fp.ActiveSheet.ColumnCount = fp.ActiveSheet.NonEmptyColumnCount;