Per Makro Schriftart nach jedem Buchstaben ändern

Hallo,
ich habe Schriftarten die einer Hanschrift ähnlich sind. Um innerhalb eines Schreibens das Echtheitsgefühl eines handgeschriebenen Dokumentes vorzutäuschen möchte Ich gern die 5 Handschriften nach jedem Buchstaben innerhalb dieser 5 abwechselnd erscheinen lassen. Dadurch erscheinen zum Beispiel zwei aufeinanderfolgende t´s unterschiedlich.

Meine Vorstellung wäre ein Makro das nach jedem aufgeführten Buchstaben eine der 5 Schriftarten wählt. Die Namen der Schiftarten lauten 01Handschrift bis 05Handschift

Hat jemand einen Ansatz für mich?

hi michael

ich mag mich täuschen, aber bisher habe ich keine möglichkeit gefunden, sich mit standard-makro-mitteln in den event des buchstaben-einfügens reinzuhängen - mit anderen worten, nach jedem tastendruck ein makro aufzurufen, ist nicht so einfach. gehen tut es ganz sicher, aber eben nicht mit standard-vba.

ich bin auch nicht sicher, wie sinnvoll es ist, bereits während der eingabe ständig irgendwelche fonts zu wechseln. ich vermute, dass es sinnvoller ist, zuerst den text in standard-schrift einzugeben und erst anschließend ein formatier-makros drüberlaufen zu lassen. sich in den dokument-speichern-ablauf einzuklinken ist relativ trivial, wenn der formatierungsschritt möglichst automatisiert erfolgen soll.

ein paar hinweise:

  • wenn dein makro den namen „DateiSpeichern“ hat, dann wird es beim aufruf des entsprechenden menüpunkts statt der internen word-funktion aufgerufen. hier kannst du eine aktionen durchführen, bevor du die interne funktion selber aufrufst (z.b. das formatieren)

  • eine simple grundstruktur für das font-wechseln sieht in etwa so aus:

    For Each Zeichen In ActiveDocument.Characters
    Zeichen.Font.Name = „Handschrift01“
    Next

wobei das beispiel natürlich schwachsinn ist, weil es immer den selben font nimmt, was auch einfacher geht. aber ein bisschen sollst du ja auch selber tun.

lg
erwin

ps: dir ist aber schon bewusst, dass das ergebnis deiner formatierungen ziemlich grausig aussehen wird - unabhängig von der qualität der fonts?

hi Erwin und vielen Dank für Deine Antwort!

ich möchte natürlich das Makro nach geschriebenen Text ausführen.
Habe auch schon eine ganze weile rumgebastelt. Die Bedenken bezüglich des Aussehens habe ich nicht da ich das ganze in mühevoller Handarbeit bereits auf Aussehen geprüft habe. Bisher habe ich allerdings nur 3 Schriftarten fertig. Diese Unterscheiden sich nur in kleinen feinen Nuancen aber das macht es gerade aus. Wär eine Lösung findet dem maile ich gern diese Schriften zu denn irgendwie bin ich seit heute morgen beim basteln und es funktioniert einfach nicht.

Gruß Michael

sowas in der art??

Sub ConvertToScribe()

Dim Schriftarten(5) As String
Dim Zeichen As Range
Dim Index As Integer

' hier sinnvolle schriftarten eintragen...
Schriftarten(1) = "Times New Roman"
Schriftarten(2) = "Courir New"
Schriftarten(3) = "Comic Sans Serif"
Schriftarten(4) = "Bauhaus 93"
Schriftarten(5) = "AvantGarde"

Randomize

For Each Zeichen In ActiveDocument.Characters
 'Variante mit Zufälliger Verteilung der Schriftarten
 ' üblicherweise sind die werte normalverteilt, d.h. alle
 ' werte kommen in summe gleich häufig vor
 Index = (Rnd \* 5)

 'Variante mit regelmässiger Abfolge
 ' funktioniert nicht zu 100% zuverlässig, sollte aber reichen
 ' (ginge natürlich auch über eine zusätzliche zählschleife...)
 'Index = (Zeichen.Start Mod 5) + 1

 ' eine der beiden varianten sollte auskommentier bleiben

 Zeichen.Font.Name = Schriftarten(Index)
Next
End Sub