Utworzyłem tabelę przestawną, używając Apache POI 3.11. w następujący sposób:Wstaw etykietę kolumny do tabeli przestawnej za pomocą Apache POI?
FileInputStream file = new FileInputStream(new File(path+fname));
XSSFWorkbook workbook = new XSSFWorkbook(file);
XSSFSheet sheet = workbook.getSheetAt(0);
//area of pivot data
AreaReference a=new AreaReference("A1:J4");
CellReference b=new CellReference("N5");
XSSFPivotTable pivotTable = sheet.createPivotTable(a,b);
//insert row
pivotTable.addRowLabel(3);
pivotTable.addRowLabel(6);
//insert column
pivotTable.addColumnLabel(DataConsolidateFunction.COUNT, 5);
//export
FileOutputStream output_file =
new FileOutputStream(new File(path+"POI_XLS_Pivot_Example.xlsx"));
workbook.write(output_file);//write excel document to output stream
output_file.close(); //close the file
Po wygenerowaniu raportu prawidłowo pokazuje wiersz. Ale to nie pokazuje etykietę kolumny:
chcę wyświetlić etykietę tej kolumny w moim stole obrotowym tak:
img http://www.pivot-table.com/wp-content/uploads/2010/12/calculateditem04.png
Czy ktoś zna rozwiązanie tego problemu ?
Dzięki.
W tej chwili mam dokładnie ten sam problem! Cóż, ponieważ jest to wersja beta, prawdopodobnie nie jest to możliwe w tej chwili ... Szkoda, że nie ma metody "addColumnLabel (int)", która dodawałaby etykietę kolumny bez funkcji konsolidacji danych ... Szukałem trochę przykładowy kod i znaleźli to: https://code.google.com/p/web-design-r/source/browse/trunk/zpoiex-r/src/org/zkoss/zpoiex/ss/usermodel/helpers/PivotTableHelper. java? r = 15 Metoda 'createPivotTable' wygląda interesująco tam, gdzie obsługuje niektóre' CTPivotField's. Nie wiem, czy jest jakaś droga przez te pola ?! – bobbel
Czy to działa? Polecenie Utwórz kolumnę addColumnLabel, jak pokazano poniżej, nadal nie działa. Dzięki – labheshr