in reply to Re^13: protect excel file in perl script
in thread protect excel file in perl script

I tried to execute the code you gave me but am getting the below error please let me know am I missing anything or module version need to be upgraded or dependency required? -bash-3.2$ dos2unix test.pl dos2unix: converting file test.pl to UNIX format ... -bash-3.2$ perl test.pl Can't locate object method "worksheets" via package "Spreadsheet::ParseExcel::Workbook" at test.pl line 15.
  • Comment on Re^14: protect excel file in perl script

Replies are listed 'Best First'.
Re^15: protect excel file in perl script
by marto (Cardinal) on Mar 16, 2017 at 14:22 UTC
Re^15: protect excel file in perl script
by poj (Abbot) on Mar 16, 2017 at 15:17 UTC

    Try without worksheets method which was added in version 0.43 January 7 2009

    #!/usr/bin/perl -w use strict; use Spreadsheet::ParseExcel; my $file = '/home/muthum/excel1.xls'; my $parser = Spreadsheet::ParseExcel->new( Password => 'secret' ); my $workbook = $parser->Parse($file); if ( !defined $workbook ) { die $parser->error(), ".\n"; } my $count = $workbook->{SheetCount}; print "Workbook has $count sheets\n"; for my $i (0..$count-1){ my $worksheet = $workbook->{Worksheet}[$i]; my $cell = $worksheet->get_cell( 0, 0 ); if ($cell){ print "[A1] = '", $cell->Value,"'\n"; } }

    What are you trying to do with the spreadsheet, just read the contents ?

    poj
      o/p Workbook has 1 sheets Can't locate object method "get_cell" via package "Spreadsheet::ParseExcel::Worksheet" at test.pl line 18. -bash-3.2$ no we are writing the content in the spreadsheet.but it should be password protected
        no we are writing the content in the spreadsheet

        To be clear, you have an existing unprotected spreadsheet. You don't want to read from it or write to it, you just want to password protect it using a perl script. Is that correct ?

        poj