0
有誰知道什麼可能是錯誤的以下過濾器我想爲apache POI生成的報告設置?在apache POI範圍內的自動過濾器不工作
我使用這個代碼:
sheet.setAutoFilter(CellRangeAddress.valueOf("A4:A6"));
爲了得到這樣的結果:
然而,當我點擊箭頭來篩選我的結果我還獲得了價值「平均「作爲下拉列表中的可能結果。
有我丟失的東西嗎?
有誰知道什麼可能是錯誤的以下過濾器我想爲apache POI生成的報告設置?在apache POI範圍內的自動過濾器不工作
我使用這個代碼:
sheet.setAutoFilter(CellRangeAddress.valueOf("A4:A6"));
爲了得到這樣的結果:
然而,當我點擊箭頭來篩選我的結果我還獲得了價值「平均「作爲下拉列表中的可能結果。
有我丟失的東西嗎?
只需在數據區域和頁腳行之間添加一行空行。 數據區域可能受到空行和列/標題的限制。
雖然您選擇了A4:A6
,但只有A4
被標記爲自動過濾器......我不確定,但我認爲,您只能通過VBA實現水平自動過濾。因此setAutoFilter
應該是A4:B4
,因爲您只標記標題而不標記數據區域。
import java.io.*;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.ss.util.*;
public class Autofilter {
public static void main(String[] args) throws Exception {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
sheet.createRow(3).createCell(0).setCellValue("Protocol Number");
sheet.createRow(4).createCell(0).setCellValue("DEMONNUMBER1");
sheet.createRow(5).createCell(0).setCellValue("DEMONNUMBER2");
sheet.createRow(6).setZeroHeight(true);
sheet.createRow(7).createCell(0).setCellValue("Average");
sheet.setAutoFilter(CellRangeAddress.valueOf("A4:B4"));
FileOutputStream fos = new FileOutputStream("autofilter.xls");
wb.write(fos);
fos.close();
}
}
(與POI 3.9,自由報辦公室4.0測試)