Hallo,
Wie kann ich ein Excel Sheet in eine tab-getrennte txt-Datei umwandeln.
Für das Auslesen von Excel-Dateien kannst Du das Modul Spreadsheet::ParseExcel verwenden.
Ich hoffe, Du weißt, wie Du ein Modul installieren kannst.
Da ich nicht über sonderlich viel Erfahrung verfüge wäre ich dankbar wenn ich den Code hätte und nicht nur oberflächliche Erklärungen.
Eigentlich bin ich mir nie darüber im Klaren, ob das posten con Code immer das Wahre ist, aber was solls:
use strict;
use Spreadsheet::ParseExcel;
my $excel = new Spreadsheet::ParseExcel;
my $parser = $excel->Parse('deine_datei.xls');
$sheet = $parser->{Worksheet}[0]; # liest aus der ersten Tabelle aus
for(my $irow = $sheet->{MinRow} ; defined $sheet->{MaxRow} && $irow <= $sheet->{MaxRow} ; $irow++)
{ # hier werden alle verfuegbaren Zeilen durchlaufen
my(@werte) = ();
for(my $icolumn = $sheet->{MinCol} ; defined $sheet->{MaxCol} && $icolumn <= $oWkS->{MaxCol} ; $sheet++)
{ # hier werden alle verfuegbaren Spalten der aktuellen Zeile durchlaufen
my $act_cell = $sheet->{Cells}[$irow][$icell]; # Ermitteln der aktuellen Zelle
if($act_cell)
{ # nur wenn in der aktuellen Zelle was drin steht, wird der Wert uebernommen
push @werte, $act_cell->Value;
}
else
{ # falls die aktuelle Zelle nicht definiert ist, wird dafuer gesort, dass das Array auch richtig befuellt wird
push @werte, '';
}
}
print join("\t",@werte),"\n";
}
(Achtung, ungetestet)
Grüße
Klaus