plusColNum = 0;
// 行ループ終わり
}
// ブロック最終列以降に縦に伸びた分のセルを挿入する
int lastColNum = PoiUtil.getLastColNum( sheet);
if ( (maxblockEndRowIndex + 1) <= blockEndRowIndex && (blockEndColIndex + 1) <= lastColNum) {
CellRangeAddress rearRangeAddress = new CellRangeAddress( maxblockEndRowIndex + 1, blockEndRowIndex, blockEndColIndex + 1, lastColNum);
PoiUtil.insertRangeDown( sheet, rearRangeAddress);
if ( log.isDebugEnabled()) {
log.debug( "挿入範囲2 : " + (maxblockEndRowIndex + 1) + ":" + blockEndRowIndex + ":" + (blockEndColIndex + 1) + ":" + lastColNum);
}
}
maxblockEndRowIndex = blockEndRowIndex;
}
再現手順:BRタグを持ち、BRタグで指定された範囲以降の行かつ右の列に空白セルや文字列が存在するExcelテンプレートを用いて帳票を出力する
サンプルテンプレート(AF10セルに
*が記入されている)test用テンプレート_行の高さ変動.xlsx
結果:最終行と同じ高さの不要な行が挿入され、テンプレートと高さが変わる行が発生する
サンプルテンプレートを使用した場合、49行目まで行が挿入され、
支払条件行の高さが変わっている期待:不要な行挿入や高さ変更が発生しないこと
また、
ブロック最終列以降に縦に伸びた分のセルを挿入する箇所をBlockRowRepeatParamParserにて確認しました。関連あると思われますので以下に記載します。