java中 poi3.9 sheet.shiftRows()时如何做到上移时覆盖原本行的数据
时间: 2024-03-09 20:49:46 浏览: 241
在使用 `sheet.shiftRows()` 方法上移行时,如果希望新插入的行覆盖原本行的数据,可以将第五个参数 `resetOriginalRowHeight` 设置为 `true`。这样,被移动的行将被删除,而新插入的行将会覆盖原本行的数据。
以下是使用 `sheet.shiftRows()` 方法上移行并覆盖原本行的数据的示例代码:
```
// 将第 21 行到第 44 行上移 moveNUM 行,并覆盖原本行的数据
int startRow = 21;
int endRow = 44;
int moveNUM = -1; // 向上移动一行
sheet.shiftRows(startRow, endRow, moveNUM, true, true);
```
在上面的示例代码中,我们将第 21 行到第 44 行上移了一行,并将第 21 行覆盖了原本的数据。
希望这可以帮助您解决问题!
相关问题
sheet.shiftRows(21, 44, moveNUM,true); java中 poi3.9报错
根据您提供的信息,我可以猜测您在使用 Apache POI 3.9 来操作 Excel 文件,并且在使用 `sheet.shiftRows(21, 44, moveNUM,true)` 方法时遇到了报错。
在 Apache POI 3.9 中,`sheet.shiftRows()` 方法的参数列表如下:
```
void shiftRows(int startRow, int endRow, int n, boolean copyRowHeight, boolean resetOriginalRowHeight);
```
其中,第四个参数 `copyRowHeight` 指定是否将被移动的行的行高复制到新插入的行中,而第五个参数 `resetOriginalRowHeight` 指定是否重置原始行的高度。
因此,您可以尝试将您的代码修改为:
```
sheet.shiftRows(21, 44, moveNUM, true, true);
```
其中,第四个参数 `true` 表示将被移动的行的行高复制到新插入的行中,第五个参数 `true` 表示重置原始行的高度。
希望这可以帮助您解决问题!
阅读全文