我正在使用Apache POI XSSF来读写Excel表格。
我知道我可以使用Sheet.setActiveCell(CellAddress address)
在工作表上设置活动单元格。
但是,我想将它设置为在工作表上包含多个单元格的范围,如下图所示:
当我保存使用Excel选择了多个单元格的工作表时,会在打开保存的文件时选择这些单元格。 有没有办法用POI XSSF做到这一点?
答案 0 :(得分:3)
您可以使用以下行在excel中将ranke作为活动单元格实现:
myDF.write.format("com.databricks.spark.csv").option("header", "true").save("output.csv")
希望它有所帮助。
从3.16开始,不推荐使用setActiveCell(String)方法,并且您不希望使用我建议创建自己的CellAddress的弃用方法:
sheet.setActiveCell("A1:B2");
并使用ist like:
public class CellRangeAddress extends CellAddress {
private CellAddress start;
private CellAddress end;
public CellRangeAddress(final CellAddress start, final CellAddress end) {
super(start);
this.start = start;
this.end = end;
}
@Override
public String formatAsString() {
if (end != null) {
return start.formatAsString() + ":" + end.formatAsString();
}
return super.formatAsString();
}
}
不是最干净,最好的方式,但没有警告就行。