Java : Apache POI Cell位置->Excel Cell名変換処理

Java POI便利メソッド。

Apache POIでのExcelセル指定は0~の数字。
実際のExcel上ではA~の英字。ZまでいくとAA、ZZまでいくとAAAとなる。
ログ出力等でExcel上の表記と合わせたいと考え作成。
昨日の逆バージョン。

/**
 * POI Cell位置->Excel Cell名変換処理
 * @param cellNo POI Cell位置(0-)
 * @return Excel Cell名(A-)
 */
static public String changeCellString(int cellNo) {
    String cellString = "";
    int cellNoCalc = cellNo;
    boolean first = true;
    while(cellNoCalc > 0) {
        int cellCharNo = cellNoCalc % 26;
        cellString = (first == true ? (char)(cellCharNo + 65) : (char)((cellCharNo - 1) + 65)) + cellString;
        cellNoCalc /= 26;
        first = false;
    }
    return cellString;
}

Java : Apache POI Cell位置->Excel Cell名変換処理” への1件のコメント

  1. 列を表す文字列と列インデックスを変換する方法。

    import org.apache.poi.ss.util.CellReference;
    public static void printColumn() {
    int index = CellReference.convertColStringToIndex(“Z”);
    System.out.println(index);

    String column = CellReference.convertNumToColString(26);
    System.out.println(column);
    }

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です