0

から範囲領域という名前のExcelシートの高さと幅を取得する方法HSSFWorkbook POI API

グーグルから1つの参照を取得しましたが、Excelシートの名前付きインデックス領域の高さと幅を取得できませんでした。

前もって感謝します。

はい、それは範囲という名前であり、名前付き範囲によって取得されたセルの高さと幅が必要です。範囲という名前の「print_area」を持ち、セルの高さと幅を指定するコードの下。

int namedCellIdx = workbook.getNameIndex( "Print_Area"); HSSFName aNamedCell = workbook.getNameAt(namedCellIdx);

    // retrieve the cell at the named range and test its contents
    String a = aNamedCell.getReference();

    AreaReference aref = new AreaReference(aNamedCell.getRefersToFormula());
    CellReference[] crefs = aref.getAllReferencedCells();
    for (int i=0; i<crefs.length; i++) {
        Sheet s = workbook.getSheet(crefs[i].getSheetName());
        Row r = sheet.getRow(crefs[i].getRow());
        System.out.println(r.getHeight());

        System.out.println(sheet.getColumnWidth(crefs[i].getCol()));;

       //here want height and width of "Print_area" cells
        Cell c = r.getCell(crefs[i].getCol());
        System.out.println(c.getStringCellValue());


        // extract the cell contents based on cell type etc.
    }
4

1 に答える 1

1

http://poi.apache.org/apidocs/index.htmlで API ドキュメントを読んでください。

具体的にはorg.apache.poi.ss.util.AreaReference、最初と最後のセル参照を取得し、範囲のサイズを決定できる を見てください。

ただし、列全体または行全体、さらには連続していない領域など、多くの特殊なケースに対処する必要があります。

于 2013-03-07T06:38:58.603 に答える