0から始めるか1からやるかPOIは0から始まる。これはJavaの配列のインデックスとも一致している。VBAの配列のインデックスは本当は1から始めるのが文法を作った人の意図のはず。Excelを初めとしたOffice系のオートメーションではインデクサの引数は1から始まるのではないだろうか。いうかExcelそのもののロウが1から始まってるからかも。表計算ソフトの行表示としても1と書いてあるのは多分、正しい(しょせん多分に過ぎないけど。自然数を採用するのは自然ではあると思う)。VBAでの(というかCOMで表されているExcelのAPIとしての)Cells(1,1)というのは、POIのRow=0、Cell=0になるのだが、これってどうなのかな。1)もわかりにくくは無いような気もする。すればPOIがわかりにくいということだ。最初から0として試し始めていたから直観的なのかも知れないけど、わからん。同じJavaのAPIでもJDBCは1から始めてる。これはとってもイヤで、getString(0)とか書いて実行時に例外を食らったことが無いわけでは無い。言え、SQLの発想としては正しいのかな、と思うし、(実はADOは知っているけどODBCは知らないし、今更調べても役に立たないから調べないけど)多分ODBCも1から始めてるんじゃなかろうか。いうか調べてしまった。enabled.——SQLGetDataのAPIリファレンスから引用そうかカラム番号なのか。1から始まるのはExcelのセルと同じで(多分)正しい発想だろう。このあたりがPOIの注意点かな。Excelのオブジェクトモデルとは全然異なるということで。00:37)なるほど。オフセットでみるか要素をたどるかで区別するのはありかも。前者が参照で後者が値というのは直感的(観じゃないかも)な気がします。