Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
752to756
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
752to756
752to756
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

HTML-Datei aus Excel schreiben

HTML-Datei aus Excel schreiben
14.04.2006 22:26:26
Fritz
Hallo Gemeinde, ich habe da mal eine Frage.
Ich bereite eine HTML-Seite vor, deren Inhalt von jemandem geändert werden muss, der von HTML gar keine Ahnung hat. Nun soll er in eine Exceltabelle seine Daten eingeben und dann auf'n Knopp drücken und die fertige Datei auf den Server laden.
Ich kriege es nicht gebacken, dass der Link für das Style-Sheet für den IE-Explorer unter Print #1, gedruckt wird.
Das habe ich und die erste Zeile wird gedruckt:

Print #1, "<link rel=""stylesheet"" href=""../style.css"" type=""text/css"">"
Print #1, "<!--[if IE]><link rel=""stylesheet"" href=""../style_ie.css"" type=""Text/css""></style><![endif]-->"

die zweite Zeile ist nicht umgebrochen im Original.
Was mache ich denn wieder falsch?
Für Hilfe wie immer sehr dankbar ist
Fritz

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: HTML-Datei aus Excel schreiben
14.04.2006 22:43:31
MichaV
Hallo,
die zweite Zeile ist nicht umgebrochen im Original. ...wie meinste denn das genau?
Gruß- Micha
PS: Rückmeldung wäre nett.
AW: HTML-Datei aus Excel schreiben
14.04.2006 22:50:45
Fritz
Hallo -
Beim Schreiben im Editor für die Anfrage war die Zeile am Zeilenrand umgebrochen, also wurde in der nächsten zeile weiter geführt. Dies führt mitunter im Code zu Fehlern. Deshalb habe ich das erwähnt.
Sie ist dann aber so, wie sie auch in meinem Code steht, auf dem Bildschirm erschienen.
Grüße, Fritz.
AW: HTML-Datei aus Excel schreiben
14.04.2006 22:58:13
MichaV
Hallo,
bei mir funzt das auf Anhieb. So ist das Ergebnis:

<link rel="stylesheet" href="../style.css" type="text/css">
<!--[if IE]><link rel="stylesheet" href="../style_ie.css" type="Text/css"></style><![endif]-->

Frage lass ich mal offen..
Gruß- Micha
Anzeige
AW: HTML-Datei aus Excel schreiben
14.04.2006 23:22:20
Fritz
Hallo Micha,
dann muss ich bei mir noch mal nachsehen, wo der Wurm steckt. Aber noch mal zum Verständnis: Ich will damit eine Webseite erzeugen. Es klappt alles auch hervorragend, aber im Quelltext der erzeugten Seite ist genau diese Zeile für den IE-Explorer nicht vorhanden.
Ich befürchte, dass ich da vielleicht irgendetwas "auskommentiere".
hallo Klaus.
Das ist wahrhaftig eine tolle Anwendung, die ich mir auch mal reinziehen werde. Leider hilft es mir - jedenfalls, was ich auf die Schnelle habe erkennen können - bei meinem Problem nicht weiter. s.oben.
Ich schreibe mit meinem Makro die gesamte Seite, also auch den Kopf). Das sieht dann so aus:

Sub html_schreiben()
Dim Tit$, Beschr$, Aut$, Swort$, HG$
Dim Dat$    'Dateiname
Dim zelle As Range
Dim Bereich As Range
Set Bereich = ActiveSheet.Range("A:A")
Dim Pfad As String
Pfad = Sheets("Preise").Range("H1") & "\Content\"
'\als Abschluss
' Variablen füllen
Tit = "Uebernachtungspreise"
Beschr = "Preisliste als HTML aus Excel mit einem VBA-Makro erzeugt"
Aut = "Fritz Sanne"
Swort = "Gasthaus Kesten,&Uml;bernachtungspreise,Zimmer,Güntersen"
' Datei öffnen, oder neu erstellen
Dat = "preise.html"
Open Pfad & Dat For Output As #1
' HTML - Seite beginnen
Print #1, "<html>"
Print #1, "<!DOCTYPE html PUBLIC ""-//W3C//DTD HTML 4.01 Transitional//EN"">"
Print #1, "<html lang=""de-de"">"
Print #1, "<head>"
' Metaangaben zum Inhalt
Print #1, "<meta content=""text/html; charset=ISO-8859-1"" http-equiv=""content-type"">"
Print #1, "<Title>" & Tit & "</T1tle>"
Print #1, "<meta name=""GENERATOR""" & _
"content=""Microsoft Excel VBA Macro"">"
Print #1, "<link rel=""stylesheet"" href=""../style.css"" type=""text/css"">"
Print #1, "<!--[if IE]><link rel=""stylesheet"" href=""../style_ie.css"" type=""Text/css""></style><![endif]-->"
Print #1, "</head>"
' Body-Daten
Print #1, "<body>"
Print #1, "<table border=""0"" width=""500"" align=""center"">" 'Tabellenbeginn mit einer Breite von 500 Pixel
For Each zelle In Bereich
If Not zelle.Value = "" Then
Print #1, "<tr><td width=""120"" border=""0"">" & zelle.Text & "</td><td width=""120"" align=""center"" border=""0"">" & zelle.Offset(0, 1).Text _
& "</td><td width=""120"" border=""0"">" & zelle.Offset(0, 2).Text & "</td></tr>"
End If
Next zelle
Print #1, "</table>"
' Das Ende
Print #1, "</body>"
Print #1,
Print #1, "</htm1>"
' Datei schließen
Close #1
MsgBox "Eine HTML-Datei ist im Verzeichnis " & Pfad & " erzeugt worden"
Shell ("explorer.exe " & Pfad)
End Sub

Den code habe ich zum größten Teil ebenfalls aus diesem oder einem anderen Forum.
Wie gesagt, es wird alles geschrieben, bis auf den Link für den IE.
Noch 'ne Idee.
Danke, Euch Beiden,
Grüße, Fritz
Anzeige
AW: HTML-Datei aus Excel schreiben
14.04.2006 23:35:35
MichaV
Hallo,
gibts denn sowas? Hier mein "Quelltext":

<html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="de-de">
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<Title>Uebernachtungspreise</T1tle>
<meta name="GENERATOR"content="Microsoft Excel VBA Macro">
<link rel="stylesheet" href="../style.css" type="text/css">
<!--[if IE]><link rel="stylesheet" href="../style_ie.css" type="Text/css"></style><![endif]-->
</head>
<body>

Womit testest Du denn den Quellcode? Vielleicht wird in Deinem Editor die <!--[If... - Zeile einfach nicht angezeigt?
Oder versuch mal

Print #1, "<link rel=""stylesheet"" href=""../style.css"" type=""text/css"">" & vbcrlf & _
"<!--[if IE]><link rel=""stylesheet"" href=""../style_ie.css"" type=""Text/css""></style><![endif]-->"

Gruß- Micha
PS: Rückmeldung wäre nett.
Anzeige
AW: HTML-Datei aus Excel schreiben
15.04.2006 00:12:41
Fritz
Hallo Micha,
Es haut bei mir nicht hin. Im Quelltext der neu erstellten Datei erscheint tatsächlich nur die Zeile mit dem "Style/style.css".
Die nächste Zeile, wo drin stehen soll "Style/style_ie.css", wird nach wie vor nicht mitgeschrieben. Im Internetexplorer bleibt die Seite leer, obwohl der Quelltext vorhanden ist. Das mag daran liegen, dass ich in der index.html auf das style_ie.css verweise. Trotzdem müsste er eigentlich irgendwas anzeigen. Im Opera und im firefox ist alles ok, da stimmt ja auch das style.css.
Aber eigentlich müsste das Problem irgendwo im vba-Code stecken. Ich glaube, ich baue das Ding einfach noch mal neu. Ich habe eine andere Excel-Mappe kopiert, umbenannt und den Code dann verändert. Da hatte ich schon mal Probleme. vielleicht ist da irgend etwas korrupt geworden.
Hab Dank für Deine Mühe und gute Nacht.
Grüße, Fritz
Anzeige
AW: HTML-Datei aus Excel schreiben
15.04.2006 00:18:30
MichaV
Hallo,
ich sage, es liegt nicht an VBA ;o)
Wenn Du irgendwann rauskriegst woran es lag, wär ich dankbar für eine Info.
Viel Erfolg!
Gruß- Micha
AW: HTML-Datei aus Excel schreiben
15.04.2006 00:39:44
Fritz
Hallo Micha,
Ich habe es - teilweise - geschafft. Nachdem ich den Code kopiert und in Notepad sozusagen zwischengelagert habe, habe ich die gesamte Arbeitsmappe neu gebaut und siehe da, nun wird alles reingeschrieben udn steht auch da, wo es hingehört. Woran es genau lag, vermag ich nicht zu sagen. Aufgefallen ist mir, dass statt ../style.css und ../style_ie.css immer Style/style.css geschrieben wurde. In der Tat hatte ich einen solchen in der alten Mappe, die ich nur umbenannte und entsprechend meinen vorstellungen änderte. Ich denke, da hat sich irgendetwas versteckt.
Jetzt habe ich nur noch die Schwierigkeit, dass im IE die HTML-Seite leer bleibt, obwohl der Quelltext vollständig vorhanden ist. Allerdings habe ich in dem Stylesheet für den IE noch keine An gaben für eine Tabelle - aber daran kann's doch auch nicht liegen? Oder sollte der IE6 sooo sensibel sein. Der interpretiert doch sonst immer, was er will ;-)
aber is egal. Der Quelltext steht, dann werde ich den IE auch noch bewegen können, etwas anzuzeigen auf der Seite, die ich als iframe in eine andere eingebettet habe.
Grüße und Danke noch einmal für die Unterstützung,
Fritz
Anzeige
AW: Kryptomanie im Head-Bereich?
15.04.2006 13:47:34
Fritz
Hallo Micha,
du hast ja gemeint, ich solle mich noch einmal melden, wenn's klappt, bzw. wenn ich weiß, woran es gehapert hat. Letzteres weiß ich nicht, das kann ich nur ahnen.
Sehr kryptisch für mich, das alles.
Einen Teilerfolg hatte ich ja schon heute Nacht derart, dass wenigstens der Verweis auf das eine Stylesheet ausgedruckt wurde. Du meinst ja, es hinge nicht mit vba zusammen, ich glaube aber doch - wenigstens teilweise - denn als ich heute ich heute mehrere andere Mimiken probierte, stand im Quelltext der mit dem Makro erstellten Seite statt des Textes der Begriff "Wahr". Also denke ich, dass da irgendein Zeichen von vba als irgendetwas interpretiert wurde - frag mich bitte nicht, welches Zeichen oder welche Zeichenkombination dazu führten, das da nun "Wahr" stand statt der Verweis.
Ich habe das Problem vielleicht nicht gerade elegant gelöst, indem ich den gesamten Headbereich Zeile für Zeile auf ein anderes Tabellenblatt in Zellen geschrieben (A1 bis A11) und die Werte dann direkt aus den Zellen eingefügt habe.
Also:
Print #1, wks.Range("A1").Text usw.
So hat es anstandslos geklappt und der IE hat auch das für ihn bestimmte Stylesheet erkannt.
Danke noch einmal für Deine Hilfe. Da es bei Dir geklappt hat, musste ja irgendwo der Wurm (hoffentlich nicht einer von draußen;-) bei mir gelegen haben oder in meinen Anwendungen.
Grüße an Dich und die andere Excel-Gemeinde von
Fritz
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige