我已使用以下方法将过滤器应用于excel工作表A7至M7列
sheet.setAutoFilter(CellRangeAddress.valueOf("A7:M7"));但现在我想从列J7,K7和L7中删除过滤器,但是在apache poi 3.17中找不到任何方法

for(int j=0;j<=12;j++)
    {
        if(j==9||j==10||j==11)
        {
            continue;
        }
            sheet.setAutoFilter(new CellRangeAddress(6,6, j, j));
    }

最佳答案

不,没有一种方法可以从范围中排除某些列。但是您可以尝试根据排除列拆分范围。 MsExcel支持带逗号的范围,将在此处起作用。

sheet.setAutoFilter(CellRangeAddress.valueOf("A7:M7"));


范围可以更改为(如果排除了J7,K7和L7),

sheet.setAutoFilter(CellRangeAddress.valueOf("A7:I7, M7:M7"));

09-27 06:40