excelの行・列

excelをjavaで操作する必要が出たために久々にpoi使いました。
その中で、行オブジェクトから特定のセルを取得する際の引数がshortだったので、あれ、8bitで足りるの?なんてふと思って調べてみると列はIVってのが右端。えーっとIVっていくつ??ちなみに下端は65536とありました。Ctr + 右矢印キーやCtr + 下矢印キーで一気に端っこまで飛べるのね。知らねー。


普段あまりやらない、べき乗プログラミングを。javaなら

Math.pow(2, 16);

rubyなら

2 ** 16

当然結果は同じで65536です。よしよし、Excelの行は2の16乗あるわけね。
次に2の8乗は・・・こんくらいは計算しなくてもすぐ反射神経的に答えられます。そう、256です。
問題はIVってのが256かどうかだ。
これはjavaで求めようと思うと面倒くさい。そんな時はrubyの出番。といってもIVから数字を求めるってのは出来ないのでその逆を。

str = "A"
255.times{str.succ!}
print str

結果はIVでした♪