I don't have Microsoft office at home, and only use Microsoft Windows at home for Steam. At work I threw together a quick example based on yours, something like:
#!/usr/bin/perl use strict; use warnings; use Win32::OLE qw(in with); use Win32::OLE::Const 'Microsoft Excel'; $Win32::OLE::Warn = 3; # die on errors... my $Excel = Win32::OLE->GetActiveObject ('Excel.Application') || Win32::OLE->new ('Excel.Application', 'Quit'); $Excel->{'Visible'} = 1; #0 is hidden, 1 is visible $Excel->Application->{DisplayAlerts} = 0; #0 is hide alerts my $book = "c:\\input.xls"; my $new = "c:\\output.txt"; my $Book = $Excel->Workbooks->Open({FileName =>$book, ReadOnly => 1}); # open Excel file my $Sheet = $Book->Worksheets(3); $Sheet->Activate(); $Book->SaveAs({Filename => $new, FileFormat => xlText}); $Book->Close; $Excel->Quit();
Prior to running the script I populated c:\output.txt with "This is a test", and sheet three of the Excel workbook with "boohya!". After running the script the contents of c:\output.txt read "boohya!". For testing purposes I'm pretty sure I left Excel visible.
In reply to Re^3: Another Excel-OLE Question
by marto
in thread Another Excel-OLE Question
by mmittiga17
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |