Excelシート名一覧
Excelがインストールされている必要があります。
use strict;
use warnings;
use Win32::OLE;
my $excel;
eval {
Win32::OLE->GetActiveObject('Excel.Application');
};
if ($@) {
die "Excelが入っていません。 $@";
}
unless (defined $excel) {
$excel = Win32::OLE->new('Excel.Application', sub {$_[0]->Quit;})
or die "Excelが起動できません。";
}
my $filename = 'C:\Documents and Settings\user1\My Documents\test.xls';
my $book = $excel->Workbooks->Open($filename)
or die Win32::OLE->LastError();
print_sheet_name($book);
$book->Close();
$excel->Quit();
exit;
sub print_sheet_name {
my $book = shift; # Excelワークブック
my $i = 0;
while (my $sheet = $book->Worksheets(++$i)) {
print $sheet->{Name}, "\n";
}
}
