Quiero leer datos de la hoja de cálculo, que es el formato .xlsm. No puedo acceder a ella. Se muestra en blanco mientras se accede a los datos. Por lo tanto, quiero saber cómo acceder al formato .xlsm en perl.
Esto es lo que he intentado:
#!/usr/bin/perl
use strict;
use warnings;
use Spreadsheet::Read;
use Spreadsheet::read qw(ReadData);
my $book = ReadData ("C:Perl64binsample.xlsm");
foreach my $line(1..1000) {
my @rows =Spreadsheet::Read::cellrow($book->[0],"$line");
print "@rows";
}
Respuestas
0 para la respuesta № 1Parece que el módulo que usaste no funciona en archivos xlsm
Considere usar Spreadsheet::Reader::ExcelXML
en su lugar;)
http://search.cpan.org/~jandrew/Spreadsheet-Reader-ExcelXML/lib/Spreadsheet/Reader/ExcelXML.pm
También ten cuidado, debes usar push
en lugar de @rows = ...
, de esta manera, no vas a sobrescribir @rows
en cada for
iteración
Cuando intentas abrir un archivo debes agregar or die "error message";
Al final de la apertura, de esta manera verá si el archivo se abrió correctamente.
my $book = ReadData ("C:Perl64binsample.xlsm") or die "error while opening the file";
activa el error con su código de ejemplo