日本語
OHKUBOさんのコメントを受けて、日本語の出力についても調べてみた。自分のところのWriteExcel(Version2.10)ではできた。
こんな感じに指定する。
#!/usr/bin/perl -w # 文字コードはsjisで。 use strict; use Encode; use Spreadsheet::WriteExcel; my $encoding = 'shiftjis'; # このファイルの文字コード my $workbook = Spreadsheet::WriteExcel->new("excelsample.xls"); # 装飾設定(MS明朝、サイズは24、文字色は赤) my $format = $workbook->add_format(font => 'MS Mincho'); $format->set_size(24); $format->set_color('red'); foreach my $sheet (1..10) { my $sheet_name = "ためしですよ $sheet"; # 日本語のシート名 Encode::from_to($sheet_name, "$encoding", 'utf16'); my $worksheet = $workbook->add_worksheet("$sheet_name", 1); foreach my $num (1..10) { my $string = "$sheet の $num番目"; Encode::from_to($string, "$encoding", "utf16"); $worksheet->write_unicode($num-1, $num-1, "$string", $format); } }
fotolifeを使ってみた。こんな目的で使う人はいなさそうなサービスだけど、まぁいいや。
http://f.hatena.ne.jp/tamago_girai/20050211002215
上のソースで作成したExcelファイルの画像が見れます。
ppmでuninstallして再度installしてみたのだが、ppmのインストールログでは2.11となっているのに、実際のExcelWrite.pmのファイル内には、
$VERSION = '2.10'; # Five Sugars Please
と書かれていて、ちょい矛盾を感じた。