エクセルと私 2013 春

DBにつっこむ元データ、「1行1レコードの感じで作ってくれればいい感じにとりこみます〜」、とだけ言っておいたもののうっかり放置していたら驚きの、大量複数シート、セルの結合などを駆使したリッパなエクセル出来上がってしまっていてOMG

xlsのパースを・・・ 2013年にやることになるとは。 何が良いのだろう・・・ (google docsに上げてそっちのAPIを使う手もあるがね。)

IRCで聞いたら他部署で PHPExcel とやらを使った事例があったとか。
見てみたらなんと! ドキュメントがわざわざword形式でできているww
なかなかのこだわりですねww ウケた

pypiみてたら、超かっこいいキラキラネームがあった
https://pypi.python.org/pypi/excellent/0.0.2

エックセレントゥゥ!

ステキ (・◡・ 人)
ただしこいつwrite用だけだ。そんなにエクセレントじゃない

けっきょくcpanみてたらExcel::Tableというのがある。こいつはラッパーモジュールで、どうやらxlsについては今でもなつかしのSpreadsheet::ParseExcelが、そしてxlsxについてはSpreadsheet::XLSXというのを使っている。

use strict;
use warnings;
use utf8;
use lib "extlib/lib/perl5";
use Data::Dump qw/dump/;

use Excel::Table;

my $excel = Excel::Table->new;
my $book  = $excel->open('DB/おさっしください.xls');

for my $sheet ($book->worksheets) {
    warn $sheet->get_name;
    dump $excel->extract($sheet->get_name, 0); // disable title_row
}

フツーにうごく。よかった。

ただし

_人人人人人人人人人人_
> 突然のLog4perl! <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y ̄

まあいいけどね。

あと https://metacpan.org/author/JMCNAMARA Spreadsheet::ParseExcel の作者のアイコンが怖い ( ;д;)

f:id:tomi-ru:20130409184450p:plain

こっちを何かが見ている!