Eine Excel-Tabelle kann man ja als html-Datei abspeicherm, aber das erzeugt den üblichen unnötigen und aufgeblähten Microsoft-HTML-Code.
Gibt es eine Möglichkeit, eine Excel-Tabelle in ganz einfachen HTML-Tabellencode umzuwandeln?
Excel-Tabelle in vernünftigen HTML-Code umwandeln
-
-
Nein, das gibt es nicht.
Aternative (hab's aber noch nicht ausprobiert, sollte aber kein Problem sein): die Excel-Tabelle als Text-Datei abspeichern und mit PHP neu einlesen und formatieren.
G.a.d.M.
Ronald
-
Danke Ronald, wäre ja auch zu schön gewesen, wenn MS das könnte
-
Ich hab grade mal nachgesehen: du kannst eine Exeltabelle als ~.csv-Datei speichern. Dann hast du im Grunde eine normale Textdatei, wobei die einzelnen Zellen zeilenweise in der Textdatei stehen, jeweils durch ein Semikolon getrennt.
Wenn du in deinen Feldern sonst kein Semikoln verwendet hast, dann kann man das ganz einfach mit PHP wieder einlesen und vernünftig in eine HTML-Tabelle zaubern.G.a.d.M.
Ronald
-
Und wie wäre dann der PHP-Zaubercode?
Hab versucht, PHP zu lernen, aber das geht ganz und gar nicht an mich. Vielleicht hatte ich auch das falsche Buch dazu. -
Das kommt darauf an, wieviele Spalten deine Tabelle hat, ob es entsprechend eine einfache oder eine kompliziertere Lösung gibt.
Gib doch mal ein kurzes Beispiel, wie die Tabelle etwa aussieht. -
ich hab mir mal vor einiger zeit, besser vor ca 5 jahren,
n vb-programm geschrieben das access und exel- dateien umwandelt
in vernünftigen html-code.ich kann mal schauen ob ich des noch irgendwo finde......
-
Es ist eine 4-spaltige Tabelle mit den Spaltenüberschriften "Name", "Fachgebiet", "Adresse" und "Telefon".
-
Das ist jetzt mal ein ganz einfaches Beispiel, aber es funktioniert:
PHP
Alles anzeigen<html> <head> <style type="text/css"> <!-- th {font-weight:bold;text-align:left;background-color:#E1E1E1} --> </style> </head> <body> <?php $excelfile = file("adressen.csv"); for($i=0;$i<count($excelfile);$i++) { list($Name,$Fachgebiet,$Adresse,$Telefon) = split(";",chop($excelfile[$i])); if($i==0) { $Ausgabe .= "<tr><th>$Name</th><th>$Fachgebiet</th><th>$Adresse</th><th>$Telefon</th></tr>"; continue; } $Ausgabe .= "<tr><td>$Name</td><td>$Fachgebiet</td><td>$Adresse</td><td>$Telefon</td></tr>"; } echo "<table border='1' cellspacing='0' cellpadding='3' style='width:500px;'> $Ausgabe </table>"; ?> </body> </html>
Die Formatierung der Tabelle kannst du wie gewohnt mit Stylesheets machen, so wie ich es im Beispiel schon mit der Tabellenüberschrift gemacht habe.
G.a.d.M.
Ronald
EDIT: dran denken, daß die Adressen-Datei aus Excel heraus mit Speichern untern -> Typ = ".csv" abgelegt wird und in den Feldern keine Semikolon stehen.
-
Herzlichen Dank Ronald. Hat super geklappt!