I usually use something like the following code to open an excel file:
#! /usr/bin/perl
use warnings;
use strict;
use Win32;
use Win32::OLE;
# the following two may or may not be needed, depending on
# your excel file and your code
use Win32::OLE::Const 'Microsoft Excel';
use Win32::OLE::Variant;
my $excelFile = shift( @ARGV ); # or whatever
defined $excelFile or die "Usage: $0 excelFile\n";
-f $excelFile or die "Error: file '$excelFile' doesn't exist";
# convert to windows-full-path
my $fullFilename = Win32::GetFullPath( $excelFile );
# try to re-use running instance of Excel
my $excel;
eval { $excel = Win32::OLE->GetActiveObject( 'Excel.Application' ) };
if( $@ ) {
die "Error: no Excel installed: $@\n";
} # if
unless( defined $excel ) { # if not running, start it
$excel = Win32::OLE->new( 'Excel.Application',
sub { $_[0]->Quit } )
or die "Error: can't start Excel\n";
} # unless
# to see what happens; useful for debugging
$excel->{Visible} = 1;
my $workbook = $excel->Workbooks->Open( $fullFilename )
or die "Error: can't open Workbook '$fullFilename'\n";
...
(not tested)
Best regards,
perl -e "s>>*F>e=>y)\*martinF)stronat)=>print,print v8.8.8.32.11.32"