Używam Apache POI API
do generowania excel spreadsheet
danych.
Problem, z którym się spotykam, polega na tym, że po utworzeniu i otwarciu arkusza kalkulacyjnego kolumny nie są rozwinięte, więc na pierwszy rzut oka nie pojawia się jakiś długi tekst, taki jak tekst sformatowany w formacie daty.
Mógłbym po prostu dwukrotnie kliknąć obramowanie kolumny w programie Excel, aby rozwinąć lub przeciągnąć obramowanie, aby dostosować szerokość kolumny, ale może być ponad 20 kolumn i nie ma możliwości, aby robić to ręcznie za każdym razem, gdy otwieram arkusz kalkulacyjny :(
Dowiedziałem się (chociaż może to być zła metoda) groupRow()
i setColumnGroupCollapsed()
może uda mi się załatwić sprawę, ale bez powodzenia. Może używam go w niewłaściwy sposób.
Przykładowy fragment kodu
Workbook wb = new HSSFWorkbook();
CreationHelper createHelper = wb.getCreationHelper();
//create sheet
Sheet sheet = wb.createSheet("masatoSheet");
//not really working yet.... :(
//set group for expand/collapse
//sheet.groupRow(0, 10); //just random fromRow toRow argument values...
//sheet.setColumnGroupCollapsed(0, true);
//create row
Row row = sheet.createRow((short)0);
//put a cell in the row and store long text data
row.createCell(0).setCellValue("Loooooooong text not to show up first");
Po utworzeniu tego arkusza kalkulacyjnego w komórce znajduje się ciąg „Looooooong tekst, który nie jest wyświetlany jako pierwszy”, ale ponieważ kolumna nie jest rozwinięta, pojawia się tylko „Loooooooo”.
Jak mogę to skonfigurować, aby po otwarciu arkusza kalkulacyjnego kolumna była już rozwinięta ???