Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA, Textteile unterstreichen

Forumthread: VBA, Textteile unterstreichen

VBA, Textteile unterstreichen
02.05.2017 09:58:54
Marcy
Hallo zusammen,
mit einer Excel Vorlage erstelle ich Auditberichte.
Dazu baue ich den Text aus verschiedenen Zellen zusammen.
Dass hat für mich große Vorteile.
Einziger Nachteil, die Übersicht im Fließtext könnte besser sein.
Beispiel der derzeitigen Ansicht einer Zelle, Text per Formel zusammengestellt (je nach Berichtsumfang 100-200 Zellen dieser Art)
05.01.2017 Das Problem ist....
...blablabla und so weiter....
16.01.2017 Zeichnung geändert und an Lieferant.....blablabla und so weiter....
...blablabla und so weiter....
...blablabla und so weiter....
...blablabla und so weiter....
...blablabla und so weiter....
03.03.2017 Erstmuster nach neuem Stand eingetroffen...."
Da diese Zellen mit einer Formel zusammengestellt wird, bin ich nicht in der Lage
"" + Datum zu unterstreichen.
Nach jedem Berichtsupdate erstelle ich ein PDF.
Jetzt baue ich an einem CODE
-Datei speichern
-Datei speichern unter mit Dateinamen Zusatz "nur zur PDF Erstellung"
-Bereich C408 bis C700 kopieren
-einfügen als Werte
bis hier hin ist es erledigt und läuft.
Ich brauche jetzt noch
- Bereich C408:C700 nach "" suchen und und die nächsten 11 Zeichen unterstreichen.
Für einen hilfreichen Ansatz wäre ich dankbar.
Gruß Marcy
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA, Textteile unterstreichen
02.05.2017 10:11:21
Daniel
Hi
eigentlich ganz einfach:
Sub test()
Dim zelle As Range
Dim txt As String
Dim Pos As String
For Each zelle In Range("C408:C700")
txt = zelle.Value
Pos = 0
Do
Pos = InStr(Pos + 1, txt, "")
If Pos = 0 Then Exit Do
zelle.Characters(Start:=Pos, Length:=13).Font.Underline = xlUnderlineStyleSingle
Loop
Next
End Sub
Gruß Daniel
Anzeige
AW: VBA, Textteile unterstreichen
02.05.2017 10:28:06
Marcy
Hallo Daniel,
die für Dich ;-) ganz einfache Antwort hat mir aber sehr geholfen.
Habe es bereits mit Erfolg getestet.
Vielen Dank
Gruß Marcy
;
Anzeige

Infobox / Tutorial

Textteile in Excel mit VBA unterstreichen


Schritt-für-Schritt-Anleitung

Um Textteile in Excel mit VBA zu unterstreichen, kannst du den folgenden Code verwenden. Dieser Code sucht in einem bestimmten Zellbereich nach einem bestimmten Text und unterstreicht die darauf folgenden Zeichen. Hier sind die Schritte:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Menü auf Einfügen und wähle Modul.

  3. Kopiere den folgenden VBA-Code und füge ihn in das Modul ein:

    Sub test()
        Dim zelle As Range
        Dim txt As String
        Dim Pos As Integer
        For Each zelle In Range("C408:C700")
            txt = zelle.Value
            Pos = 0
            Do
                Pos = InStr(Pos + 1, txt, "")
                If Pos = 0 Then Exit Do
                zelle.Characters(Start:=Pos, Length:=13).Font.Underline = xlUnderlineStyleSingle
            Loop
        Next
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Führe das Makro aus, indem du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.

Dieser Code wird die ersten 13 Zeichen nach jedem Vorkommen des Textes in den Zellen C408 bis C700 unterstreichen.


Häufige Fehler und Lösungen

  • Fehler: Das Makro läuft nicht oder gibt einen Fehler aus.

    • Lösung: Stelle sicher, dass der Zellbereich korrekt angegeben ist. Überprüfe auch, ob der gesuchte Text im Bereich vorhanden ist.
  • Fehler: Der Text wird nicht unterstrichen.

    • Lösung: Überprüfe, ob die Zeichenlänge im Code (hier 13) korrekt eingestellt ist und ob der gesuchte Text tatsächlich existiert.

Alternative Methoden

Wenn du keine VBA-Lösungen verwenden möchtest, kannst du auch manuell unterstreichen. Allerdings ist dies bei großen Datenmengen ineffizient. Eine Alternative wäre, die Daten zuerst in ein Textverarbeitungsprogramm zu exportieren, wo du HTML unterstreichen oder das PDF unterstreichen kannst.


Praktische Beispiele

Angenommen, du hast in deiner Excel-Tabelle Auditberichte, die aus verschiedenen Zellen zusammengesetzt sind. Mit dem obigen VBA-Code kannst du gezielt Textteile unterstreichen, um die Übersichtlichkeit zu erhöhen.

Hier ist ein Beispiel für die Verwendung:

  • Vorher: 05.01.2017 Das Problem ist....
  • Nachher: 05.01.2017 Das Problem ist.... (Das Datum könnte unterstrichen erscheinen, je nach Anpassung des Codes.)

Tipps für Profis

  • Du kannst den VBA-Code anpassen, um mehrere Textteile in einer Zelle unterstreichen zu lassen. Ändere die Length-Eigenschaft entsprechend.
  • Halte deine Excel-Dateien regelmäßig sauber, indem du Makros in einem Modul speicherst und sie bei Bedarf aufrufst. So kannst du die Übersichtlichkeit deiner Auditberichte verbessern.

FAQ: Häufige Fragen

1. Wie kann ich mehrere unterschiedliche Texte unterstreichen?
Du kannst den Code anpassen, indem du zusätzliche InStr-Befehle einfügst, um verschiedene Suchtexte zu berücksichtigen.

2. Funktioniert dieser Code in allen Excel-Versionen?
Ja, der Code ist mit den meisten modernen Excel-Versionen kompatibel, die VBA unterstützen.

3. Kann ich diesen Prozess auch für andere Formate wie PDF verwenden?
Der Code selbst bezieht sich auf Excel. Um Text im PDF-Format zu unterstreichen, musst du die PDF-Datei nach dem Export in einem PDF-Editor bearbeiten.

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