Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: HTML formatierter Text in Zelle darstellen

HTML formatierter Text in Zelle darstellen
20.01.2018 09:09:18
Thomas
Hallo!
Ich möchte Preisschilder für Produkte erzeugen. Alle Daten habe ich schon perfekt formatiert in unserem Online Shop. Die Daten habe ich aus der Datenbank in eine Excel - Tabelle kopiert. Nun möchte ich die Daten per sverweis in ein anderes Blatt zuweisen, welches ich als Preisschild gestaltet habe.
Nun das Problem: Die Produktbeschreibung ist mit HTML formatiert und soll in Zelle B5 des Tabellenblattes "Preisschild" formatiert angezeigt werden.
In der Suche habe ich leider nichts passendes gefunden ...
Es wäre super, wenn mir jemand eine Lösung zu diesem Problem geben könnte!
DANKE!!!
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Und ich habe Blatt "Preisschild nicht gefunden owT
20.01.2018 12:22:30
Günther
 
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
20.01.2018 19:33:58
Thomas
Sorry, hier noch die BEISPIEL Datei.
https://www.herber.de/bbs/user/119118.xlsx
In B5 soll dann der formatierte Text stehen. Das Ergebnis wird dann ausgedruckt und als Information am Schuh ausgestellt.
DANKE!
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
20.01.2018 21:13:05
Günther
Gehe in der Suchmaschine deiner Wahl auf Wanderschaft, da wirst du gewiss fündig. Ich habe mehrere Stellen gefunden.
Gruß
Günther
Anzeige
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
20.01.2018 22:02:21
Thomas
"Gehe in der Suchmaschine deiner Wahl auf Wanderschaft, da wirst du gewiss fündig. Ich habe mehrere Stellen gefunden." ... ich nicht, wie schon geschrieben.
Die Ergebnisse waren immer im Bezug, wie mache ich aus einer Excel Tabelle eine HTML Seite, oder wie überprüfe ich in Excel erstellten HTML Code in einer einem neuen Popup, oder wie binde ich eine Webseite (URL) in eine Excel Tabelle ein.
Also das ist alles nicht das was ich brauche, wenn das Suchergebnis so leicht ist, dann senden Sie mir den Link doch bitte zu.
Anzeige
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
20.01.2018 23:27:19
Sepp
Hallo Thomas,
das geht nur per VBA und dem WebBrowser-Steuerelement.
https://www.herber.de/bbs/user/119120.xlsm
Aber warum generierst du aus den Daten nicht gleich eine html-Datei und druckst diese aus?
Gruß Sepp

Anzeige
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
20.01.2018 23:30:34
Günther
Gebe in beispielsweise Mr. Goo folgende Stich- bzw. Suchworte ein:
html formatiert in excel
und du wirst einige weitere Links finden (teils en-US)
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
21.01.2018 09:00:16
Thomas
Hallo Sepp,
!!!! SUPER !!!! Danke für die Lösung! Gibt es hier auch noch die Möglichkeit die Schriftart und Schriftgröße im VBA Code zu definieren.
"Aber warum generierst du aus den Daten nicht gleich eine html-Datei und druckst diese aus?" Die Preisschilder bekommen immer noch Ergänzungen (Sonderpreis, etc)
Schönen Gruß Thomas
Anzeige
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
21.01.2018 09:47:00
Sepp
Hallo Thomas,
die Ergänzungen kann man doch auch mit in die HTML-Datei nehmen, auch au Excel heraus.
Aber egal, sicher kann man die Darstellung gestalten wie man es braucht.
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim strFile As String, ff As Integer
Dim strHTML As String

Const clngFontSze As Long = 16 'Schriftgöße in pt
Const cstrFontName As String = "Veranda" 'Schriftart

strHTML = "<hthl><body>"
strHTML = strHTML & "<div style='font-size:" & clngFontSze & "pt; font-family:'" & cstrFontName & "';' >"
strHTML = strHTML & Range("B5").Text & "</div></body></html>"

If Target.Address(0, 0) = "A1" Then
  strFile = Environ("TEMP") & "\temp.html"
  ff = FreeFile
  Open strFile For Output As #ff
  Print #ff, strHTML
  Close #ff
  With WebBrowser1
    .Navigate2 strFile
  End With
End If
End Sub

Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
With WebBrowser1
  .Document.body.Scroll = "no"
  .Document.body.Style.Border = "none"
End With
End Sub

Gruß Sepp

Anzeige
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
21.01.2018 21:46:48
Thomas
Hallo!
Danke, aber wie drucke ich das Ergebnis dann aus? Leider wird das Webbrowser-Element nicht gedruckt ... :-(
Schönen Gruß
Thomas
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
21.01.2018 23:13:23
Sepp
Hallo Thomas,
das kann bei ActiveX-Steuerelementen schon mal passieren, die sind manchmal recht 'zickig'.
Vielleicht überlegst du es dir nochmals und ziehst doch die Erstellung einer HTML-Datei in betracht.
Gruß Sepp

Anzeige
AW: Und ich habe Blatt "Preisschild nicht gefunden owT
26.01.2018 17:32:55
thomas
Danke nochmals, ich habe die Beschreibungen nun vom HTML gesäubert und das funktioniert nun auch. Die Markenlogos und Artikelbilder wollen noch nicht so richtig (Beitrag 1604920) aber der Rest sieht super aus. HTML geht leider nicht da das meine Mitarbeiter machen sollen und die können leider nur Excel einigermaßen bedienen, daher der Umweg. Aber das Ergebnis zählt :-)
Gruß Thomas
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

HTML formatierter Text in Excel anzeigen


Schritt-für-Schritt-Anleitung

Um HTML formatierten Text in einer Excel-Zelle darzustellen, kannst du die folgenden Schritte ausführen. Diese Anleitung geht davon aus, dass du über grundlegende Kenntnisse in VBA (Visual Basic for Applications) verfügst.

  1. Öffne dein Excel-Dokument.
  2. Aktiviere die Registerkarte "Entwicklertools":
    • Gehe zu "Datei" -> "Optionen" -> "Menüband anpassen" und aktiviere die "Entwicklertools".
  3. Füge ein ActiveX-Steuerelement hinzu:
    • Klicke im Tab "Entwicklertools" auf "Einfügen" und wähle das "WebBrowser"-Steuerelement aus. Platziere es auf deinem Arbeitsblatt.
  4. Öffne den VBA-Editor:
    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  5. Erstelle ein neues Modul:
    • Klicke mit der rechten Maustaste auf dein Projekt und wähle "Einfügen" -> "Modul".
  6. Füge den folgenden VBA-Code ein:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim strFile As String, ff As Integer
    Dim strHTML As String

    Const clngFontSze As Long = 16            ' Schriftgröße in pt
    Const cstrFontName As String = "Veranda"  ' Schriftart

    strHTML = "<html><body>"
    strHTML = strHTML & "<div style='font-size:" & clngFontSze & "pt; font-family:" & cstrFontName & "';'>" & Range("B5").Text & "</div>"
    strHTML = strHTML & "</body></html>"

    If Target.Address(0, 0) = "A1" Then
        strFile = Environ("TEMP") & "\temp.html"
        ff = FreeFile
        Open strFile For Output As #ff
        Print #ff, strHTML
        Close #ff
        With WebBrowser1
            .Navigate2 strFile
        End With
    End If
End Sub
  1. Speichere und schließe den VBA-Editor.
  2. Teste die Funktionalität:
    • Ändere den Wert in Zelle A1, um den WebBrowser zu aktivieren und die HTML-Darstellung zu laden.

Häufige Fehler und Lösungen

  • Fehler 1: WebBrowser-Steuerelement wird nicht angezeigt.

    • Lösung: Stelle sicher, dass das Steuerelement korrekt platziert ist und dass die Entwicklertools aktiviert sind.
  • Fehler 2: HTML wird nicht korrekt angezeigt.

    • Lösung: Überprüfe den HTML-Code auf Syntaxfehler. Achte darauf, dass die HTML-Tags korrekt geschlossen sind.
  • Fehler 3: Druck funktioniert nicht.

    • Lösung: ActiveX-Steuerelemente sind oft nicht druckbar. Überlege, die Daten in eine HTML-Datei zu exportieren und diese zu drucken.

Alternative Methoden

Falls du keine VBA-Lösung verwenden möchtest, kannst du HTML in Excel auf folgende Weise darstellen:

  1. HTML in Excel einfügen:

    • Kopiere den HTML-Code und füge ihn in eine Zelle ein. Verwende die Funktion =WEBSERVICE() oder =FILTERXML(), um HTML-Inhalte zu importieren, jedoch wird dies nicht die Formatierung übernehmen.
  2. Export in HTML-Datei:

    • Erstelle eine HTML-Datei aus deinen Excel-Daten und öffne diese in einem Browser, um die formatierte Ansicht zu sehen.

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du HTML in Excel umwandeln kannst:

  • Preisschilder erstellen: Verwende VBA, um Produktbeschreibungen aus einer Datenbank zu laden und diese in einem ansprechenden HTML-Format in Excel darzustellen.

  • E-Mail-Vorlagen: Erstelle HTML-Vorlagen für E-Mails, die direkt aus Excel versendet werden können, indem du HTML-Formatierungen verwendest.


Tipps für Profis

  • Nutze VBA, um die Schriftart und Schriftgröße dynamisch zu ändern. Dies erlaubt dir, unterschiedliche Stile je nach Anwendungsfall zu verwenden.
  • Speichere häufig verwendete HTML-Templates in einem Modul, um den Code sauber zu halten und wiederverwendbar zu machen.
  • Experimentiere mit CSS-Styles, um die Darstellung in Excel weiter zu verbessern.

FAQ: Häufige Fragen

1. Kann ich HTML direkt in eine Excel-Zelle einfügen? Ja, du kannst HTML in eine Zelle einfügen, jedoch wird es standardmäßig nicht formatiert angezeigt.

2. Wie kann ich HTML formatierten Text in Excel drucken? Die beste Methode ist, die HTML-Daten in eine separate HTML-Datei zu exportieren und diese Datei im Browser zu drucken.

3. Welche Excel-Version benötige ich für diese VBA-Funktionen? Die beschriebenen Funktionen sollten in Excel 2010 und neueren Versionen funktionieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige