Michael Schröpl: Excel-Dateien

Beitrag lesen

Hi erika,

Ich habe eine vage Vorstellung von solch einem Skript,
aber da ich mich (noch) zu wenig mit Perl auskenne,
ist das zur Zeit für mich nicht die Lösung Nr. 1.

kommt halt darauf an, wie oft Du diese Excel-Tabellen konvertieren mußt.

Es wäre eine halbwegs überschaubare Aufgabe und ein durchaus sinnvoller Einstieg in die Materie.
Ich sehe im Moment keine besonderen algorithmischen Probleme - neben elementarem Perl (Dateien öffnen und schreiben, Schleifen, Ausgabebefehle) müßtest Du lediglich die Schnittstelle verstehen lernen, über welche Du ein Excel-Dokument ansprechen kannst (siehe unten). Das sind aber wahrscheinlich auch nur einen Handvoll entsprechender Funktionen.

Hast Du Dir eventuell mal meine Tabellen auf meiner Homepage angesehen?

Bisher nicht. (Sollte ich?)

Also mit HTML hab ich die so einigermaßen hingekriegt, mit Perl stell
ich mir das noch viel schwieriger vor, bei der Grösse dieser Tabellen.

Perl ist eine Programmiersprache.
HTML ist das Ergebnis, das bei einem Programmlauf herauskommen würde.

Wie groß die Tabellen sind, ist dabei egal.
Da die Zeilen einander strukturell gleich sind, wird das Perl-Programm wahrscheinlich in einer Schleife über lauter gleiche Zeilen eine Schablone für die jeweils zu erzeugende HTML-Tabellenzeile mit den Werten der entsprechenden Excel-Felder füllen (letzteres in einer zweiten, inneren Schleife, falls es variabel viele Spalten sein sollen) ... die Länge des Perl-Skripts ist von der Größe der Tabelle völlig unabhängig.

Du würdest also
a) über irgend eine Schnittstelle (sicher gibt es dafür ein externes
   Modul, das war schon öfter mal eine Frage hier, müßte also im Archiv
   stehen, "Excel Perl" wäre eine passende Such-Anfrage) die Excel-Datei
   öffnen und deren Inhalt einlesen (wahrscheinlich in einer Schleife
   über alle Zeilen bzw. Zellen), und
b) mit "print"-Anweisungen HTML-Code in eine ASCII-Datei ausgeben.

Wobei Du beide Operationen direkt miteinander verbinden kannst:
1. HTML-Dokumentkopf ausgeben
2. Excel-Dokument zeilenweise einlesen und daraus erzeugten HTML-Code
   jeweils direkt ausgeben
3. HTML-Dokumentende ausgeben

Und diese ASCII-Datei kannst Du dann per FTP auf Deine Homepage laden.
Im einfachsten Falle ist das schon alles.

Der nächst komfortablere Weg wäre es dann, direkt die Excel-Datei auf den Server zu laden und das oben skizzierte Skript via CGI auzzurufen ... was in Deinem Fall am Provider scheitert, aber vorläufig auch nicht notwendig erscheint.

Viele Grüße
      Michael