.csv zu .xls
Hallo!
Ich habe ein kleines Programm geschrieben in Perl, mit wirklich nur 15 Zeilen oder so, das mir aus einer .csv in eine .xls umwandelt.
Das Programm funktioniert soweit, bräuchte nur noch ein paar kleinigkeiten, die ich aber so leider nicht ausbessern kann.
1. Das " (Anführungszeichen) gehört am Anfang und am Ende weg (sprich die Regular Expression stimmt da nicht ganz)
2. Die Überschrift von den jeweiligen Spalten sollte "schöner" sein und an seiner Stelle (sollten auch Rot sein)
Hier ist der Programmcode:
Wäre super wenn mir da einer kurz helfen könnte die 2-3 Fehler'chen auszubessern.
Ich habe ein kleines Programm geschrieben in Perl, mit wirklich nur 15 Zeilen oder so, das mir aus einer .csv in eine .xls umwandelt.
Das Programm funktioniert soweit, bräuchte nur noch ein paar kleinigkeiten, die ich aber so leider nicht ausbessern kann.
1. Das " (Anführungszeichen) gehört am Anfang und am Ende weg (sprich die Regular Expression stimmt da nicht ganz)
2. Die Überschrift von den jeweiligen Spalten sollte "schöner" sein und an seiner Stelle (sollten auch Rot sein)
Hier ist der Programmcode:
|
|
Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
#!/usr/bin/perl -w
use Spreadsheet::WriteExcel;
binmode STDIN, ':encoding(UTF-8)';
use open IN => ':locale';
$colsep=";";
$wordcutoff='"';
#open(IN,"${DIR_csv}/${fileout}.csv");
my ${workbook} = Spreadsheet::WriteExcel->new("fileout.xls");
my ${worksheet} = ${workbook}->add_worksheet('Sperrabfragen');
my ${headerformat}= ${workbook}->add_format(color => 'red', bold => 1, align => 'center');
chomp(${string}=(<STDIN>));
my @line=split(";",${string});
${worksheet}->write(0,0,[@line],${headerformat});
my ${row}=1;
my ${col}=0;
while (<STDIN>){
chomp;
${worksheet}->write(${row}++,0,[split(/${wordcutoff}\s*${colsep}\s*${wordcutoff}/)]);
}
${workbook}->close();
|
Wäre super wenn mir da einer kurz helfen könnte die 2-3 Fehler'chen auszubessern.


