Spreadsheet::ParseExcel で 時刻を文字列で抽出する方法

エクセルシートを perl の Spreadsheet::ParseExcel で文字列を抽出しようとしたら、
少しはまったのでメモ。


セルに 10:00 と入力したつもりのエクセルシート

my $cell = $sheet->{Cells}[$row][$col];

と取り出した Cell オブジェクトに対して、何も考えずに

$cell->{Val}

とすると

0.41666666666667

と期待していない数字が取り出されてしまう。

これは、24時間を1とした、10:00 のようだ。

これを、「10:00:00」として取り出すには、

$cell->Value