Ansprechen einer bestimmten Excelzelle

Hijo2006

Aktives Mitglied
Hallo,

ich arbeite ja seit geraumer Zeit mit dem Einlesen und Schreiben von Excelzeilen.
Nun habe ich das Problem, dass ich nachträglich nochmal ein bestimmt Excelzelle
ansprechen will.
Ich nutze die HSSF-Klassen, jedoch finde ich in der Doku keine passende Methode.
Sorry für die Fragen
 
Java:
// delete row 0-24, row 74 - 99 && change cell 3 on row 39 to string "MODIFIED CELL!!"

                HSSFWorkbook wb = HSSFReadWrite.readFile(fileName);
                FileOutputStream stream = new FileOutputStream(args[1]);
                HSSFSheet sheet = wb.getSheetAt(0);

                for (int k = 0; k < 25; k++) {
                    HSSFRow row = sheet.getRow(k);

                    sheet.removeRow(row);
                }
                for (int k = 74; k < 100; k++) {
                    HSSFRow row = sheet.getRow(k);

                    sheet.removeRow(row);
                }
                HSSFRow row = sheet.getRow(39);
                HSSFCell cell = row.getCell(3);
                cell.setCellValue("MODIFIED CELL!!!!!");

                wb.write(stream);
                stream.close();
                wb.close();
Das hab ich auf http://svn.apache.org/repos/asf/poi...oi/hssf/usermodel/examples/HSSFReadWrite.java gefunden.
Also so kommt man aufjedenfall an eine HSSFCell dran. Wenn wir uns jetzt noch die Doku von HSSFCell anschauen ... https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFCell.html
finden wir bestimmt eine getCellValue - Methode ... Und tatsächlich die gibt es nicht! Aber es gibt getStringCellValue(),getNumericCellValue(),getBooleanCellValue() und ähnliche...
Im zweiten Google-Eintrag zu "HSSFCell" findet man folgenden Link: http://stackoverflow.com/questions/19469075/how-to-get-the-hssfcell-string-value-to-liststring
Dort macht jemand tatsächlich die Unterscheidung
Java:
switch(cellFirstRow.getCellType()){
      case Cell.CELL_TYPE_BOOLEAN:
          result = cell.getBooleanCellValue();
          break;
      case Cell.CELL_TYPE_NUMERIC:
          result = cell.getNumericCellValue();
          break;
      case Cell.CELL_TYPE_STRING:
          result = cell.getStringCellValue();
          break;
      }
 

Zurück
Oben