#!/usr/bin/perl ################################################## # toexcel --Mike Schilli, 2001 (m@perlmeister.com) ################################################## use strict; use warnings; my $IN = "cd.dat"; # Eingabedatei my $OUT = "cd.xls"; # Ausgabe-(Excel)-Datei use Spreadsheet::WriteExcel; open IN, "<$IN" or die "Cann open $IN"; my @entries = (); while() { chomp; my($artist, $title) = split /,/, $_, 2; $title ||= ""; push @entries, [$artist, $title]; } close IN; my $book = Spreadsheet::WriteExcel->new($OUT); my $sheet = $book->addworksheet(); my $format = $book->addformat(font => "Arial", size => 8); my $count = 0; for my $col (0..3) { for my $row (0..19) { my $e = shift @entries; last unless $e; # Keine Einträge mehr? my($artist, $title) = @$e; # Zähler schreiben $sheet->write($row, 2*$col, ++$count, $format); # Eintrag schreiben $sheet->write($row, 2*$col+1, "$artist - $title", $format); } } for my $col (0..3) { # Zählerfeld: 2 Zeichen breit $sheet->set_column(2*$col, 2*$col, 2); # CD-Feld: 20 Zeichen breit $sheet->set_column(2*$col+1, 2*$col+1, 20); } $book->close();