res1312
Goto Top

Makro für MS Word

Hallo,

Weiß jemand wie man ein Makro für MS Word erstellt, welches im aktuellen Dokument automatisch die drei ersten Buchstaben jedes Wortes fett markiert?

Danke face-smile

Content-ID: 4494720655

Url: https://administrator.de/contentid/4494720655

Ausgedruckt am: 25.11.2024 um 04:11 Uhr

Crusher79
Crusher79 03.11.2022 aktualisiert um 13:45:28 Uhr
Goto Top
https://stackoverflow.com/questions/3096523/make-the-first-letter-bold-o ...

Hier mal für jeden Satz. Arbeite selten mit Makros. Müsste ich bei mir sonst nachbauen.

Option Explicit

Public Sub SetFirstLetterBold()
    Dim i As Integer
    Dim doc As Document
    Set doc = ActiveDocument

    For i = 1 To doc.Sentences.Count
        doc.Sentences(i).Characters(1).Bold = True
    Next
End Sub

Hier das Ergebnis:
test_macro

PS:
HIer mal für jedes Wort. Man kann auch Bold 3x hintereinander schreiben. Es geht nur nicht, da ein Komma "," wohl auch als Word interpretiert wird. Die Schleife durchläuft alle Wörter und macht den 1. Buchstaben Fett.

Option Explicit

Public Sub SetFirstLetterBold()
    Dim i As Integer
    Dim doc As Document
    Set doc = ActiveDocument

    For i = 1 To doc.Words.Count
        
        doc.Words(i).Characters(1).Bold = True

    Next
End Sub
TK1987
TK1987 03.11.2022 aktualisiert um 13:45:05 Uhr
Goto Top
Moin,

das kann man auch ohne Skript-Kenntnisse ganz leicht selbst aufzeichnen.

Registerkarte "Ansicht > Makros > Makro aufzeichnen" - einen Namen für das Makro vergeben und Ok klicken.

Anschließend Strg+H drücken (Suchen und Ersetzen).
Im Suchen-Feld gibst du einfach "<???" ein (siehe Button "Sonderformat")

Dann in das Feld "Ersetzen durch" klicken und unten drunter "Format > Zeichen" wählen, Fett auswählen und anschließend "Alles Ersetzen".
Makro-Aufzeichnung beenden und fertig.

Gruß Thomas
Crusher79
Crusher79 03.11.2022 um 13:53:45 Uhr
Goto Top
Zitat von @TK1987:

Moin,

das kann man auch ohne Skript-Kenntnisse ganz leicht selbst aufzeichnen.

Dürfte auch gehen. Ich frag mich nach dem Sinn. Hab hier mal gesagt, nur wen Wortlänge > 3 ist soll er es machen. Kommata fallen dann raus. Aber auch Wörter mit 2 Buchstaben face-big-smile

Mach wenig mit Word. Aber scheinbar brächte man da am besten eine Range + Handling von kurzen Wörtern. Und und und. Naja

Option Explicit

Public Sub SetFirstLetterBold()
    Dim i As Integer
    Dim doc As Document
    Set doc = ActiveDocument

    For i = 1 To doc.Words.Count
        If Len(doc.Words(i)) > 3 Then doc.Words(i).Characters(1).Bold = True
        If Len(doc.Words(i)) > 3 Then doc.Words(i).Characters(2).Bold = True
        If Len(doc.Words(i)) > 3 Then doc.Words(i).Characters(3).Bold = True

    Next
End Sub
Res1312
Res1312 03.11.2022 um 13:57:08 Uhr
Goto Top
Danke euch allen! Habt mir sehr weitergeholfen - an die "suchen und ersetzen"-Funktion hab ich garnicht gedacht. face-smile Scheinbar hilft ein so formatierter Text alljenen mit Lern- bzw. Konzentrationschwächen, besser sinnesfassend zu lesen. Dankeschön!
Crusher79
Crusher79 03.11.2022 um 14:21:00 Uhr
Goto Top
Ups.

@Res1312 in den Stackoverflow war übrigens nicht nur VBA sondern auch Erklärung mit Wildcards und Suchen+Finden.

Hat ich aber auch überlesen ^^

https://stackoverflow.com/questions/3096523/make-the-first-letter-bold-o ...

http://www.gmayor.com/replace_using_wildcards.htm