G'day gauss76,
Your problem starts with the first line of code you posted:
$FileToOpen=myfile.xlsx;
It seems to work as is:
$ perl -e '$FileToOpen=myfile.xlsx;' $
But when I ask Perl to warn about problems:
$ perl -we '$FileToOpen=myfile.xlsx;' Unquoted string "myfile" may clash with future reserved word at -e lin +e 1. Unquoted string "xlsx" may clash with future reserved word at -e line +1. Name "main::FileToOpen" used only once: possible typo at -e line 1.
If I use strict:
$ perl -Mstrict -e '$FileToOpen=myfile.xlsx;' Global symbol "$FileToOpen" requires explicit package name (did you fo +rget to declare "my $FileToOpen"?) at -e line 1. Bareword "myfile" not allowed while "strict subs" in use at -e line 1. Bareword "xlsx" not allowed while "strict subs" in use at -e line 1. Execution of -e aborted due to compilation errors.
If I ask Perl how it sees that code:
$ perl -MO=Deparse -e '$FileToOpen=myfile.xlsx;' $FileToOpen = 'myfilexlsx'; -e syntax OK
[Hint: See the concatenation operator in "perlop: Additive Operators".]
Add these lines to the start of your code:
use strict; use warnings;
Then fix all the code such that you no longer get any error or warning messages.
Use the strict and warnings pragmata in all of your code!
— Ken
In reply to Re: trap error from parsexlsx
by kcott
in thread trap error from parsexlsx
by gauss76
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |