2

我正在使用 Apache POI XSSF 和 HSSF API。

如果我这样做,它只会冻结窗格(不拆分):

sheet1.createSplitPane(8000, 5000, 0, 0, Sheet.PANE_LOWER_RIGHT);
sheet1.createFreezePane(0, 1); 

如果我这样做,它只会拆分窗格(不冻结):

sheet1.createFreezePane(0, 1); 
sheet1.createSplitPane(8000, 5000, 0, 0, Sheet.PANE_LOWER_RIGHT); 

我应该如何让两者在同一张纸上一起工作?

4

1 回答 1

1

据我所知,Excel 不支持在同一张工作表中同时拥有冻结窗格和拆分窗格。 此链接似乎表明 Excel 不允许这样做。

无论 Excel 是否允许/将允许它,POI 也不支持它。

createSplitPane的 Javadocs明确指出:

创建一个拆分窗格。任何现有的冻结窗格或拆分窗格都会被覆盖。

createFreezePane的 Javadocs说了类似的话。

创建一个拆分(冻结窗格)。任何现有的冻结窗格或拆分窗格都会被覆盖。

另外,只要打开 Excel(我有 Excel 2010),如果我创建一个拆分窗格,然后是一个冻结窗格,拆分窗格就会消失。如果我然后创建一个拆分窗格,那么冻结窗格就会消失。

Excel(至少到 2010 年)似乎不会同时支持冻结窗格和拆分窗格,Apache POI 尊重这一事实。

于 2014-03-17T18:47:00.463 回答