Weitere Beispiele zur Verwendung von Spreadsheet :: ParseExcel

Ich habe das @ benutSpreadsheet :: ParseExcel, um den Inhalt der Tabelle aufzulisten. Ich habe mehrere Beispiele zum Speichern der gesamten Tabelle gesehen. Ich würde wirklich gerne sehen, wie man dieses Skript selektiver einsetzt.

Das folgende Beispiel von IBM gibt im Grunde den Inhalt aller Zellen aus, die Daten enthalten.

#!/usr/bin/perl -w

use strict;
use Spreadsheet::ParseExcel;

my $oExcel = new Spreadsheet::ParseExcel;

die "You must provide a filename to $0 to be parsed as an Excel file" unless @ARGV;

my $oBook = $oExcel->Parse($ARGV[0]);
my($iR, $iC, $oWkS, $oWkC);
print "FILE  :", $oBook->{File} , "\n";
print "COUNT :", $oBook->{SheetCount} , "\n";

print "AUTHOR:", $oBook->{Author} , "\n"
 if defined $oBook->{Author};

for(my $iSheet=0; $iSheet < $oBook->{SheetCount} ; $iSheet++)
{
 $oWkS = $oBook->{Worksheet}[$iSheet];
 print "--------- SHEET:", $oWkS->{Name}, "\n";
 for(my $iR = $oWkS->{MinRow} ;
     defined $oWkS->{MaxRow} && $iR <= $oWkS->{MaxRow} ;
     $iR++)
 {
  for(my $iC = $oWkS->{MinCol} ;
      defined $oWkS->{MaxCol} && $iC <= $oWkS->{MaxCol} ;
      $iC++)
  {
   $oWkC = $oWkS->{Cells}[$iR][$iC];
   print "( $iR , $iC ) =>", $oWkC->Value, "\n" if($oWkC);
  }
 }
}

Kann mir jemand ein Beispiel geben, wie ich für jede Zeile eine Aktion für eine bestimmte Spalte festlegen kann?

Zum Beispiel habe ich eine Tabelle mit 7 Spalten und n Zeilen. Ich möchte die Daten in jeder Spalte auf eine bestimmte Weise neu formatieren. Vielleicht möchte ich Spalte 6 für jede Zeile nehmen und Text an das Ende der in der Zelle gespeicherten Zeichenfolge anhängen. Wie wäre das aufgebaut?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage