Kommasetzung in WordVBA

Hallo,
ich hab ein Problem und komm nicht weiter. Ich habe ein Formular bei dem automatisch aus dem Anschriftenkopf die Anrede ausgelesen wird. Unter anderem soll VBA auch bei Herr oder Dame den Namen auslesen und nach der Anrede einfügen. Danach kommt im Vordruck ein Komma. Dieses würde ich gerne entfernen, denn wenn eine Firma angeschrieben wird, heißt es „Sehr geehrte Damen und Herren“ danach soll das Komma folgen und nicht wie im Moment ein leeres Formfield und dann das Komma. Kann ich mit irgendeinem Befehl VBA sagen setze hier an die Stelle ein Komma? Dann könnte ich im Vordruck das Komma weglassen.

Programmierung sieht im Moment so aus:

Public Sub AnNaKop()

Dim Anrede As FormField
Dim doc As Document

If ActiveDocument.FormFields(„Anrede“).Result = „Herrn“ _
Then ActiveDocument.FormFields(„Anrede2“).Result = „geehrter Herr“
If ActiveDocument.FormFields(„Anrede“).Result = „Herrn“ _
Then ActiveDocument.FormFields(„Name2“).Result = ActiveDocument.FormFields(„Name“).Result

If ActiveDocument.FormFields(„Anrede“).Result = „Frau“ _
Then ActiveDocument.FormFields(„Anrede2“).Result = „geehrte Frau“
If ActiveDocument.FormFields(„Anrede“).Result = „Frau“ _
Then ActiveDocument.FormFields(„Name2“).Result = ActiveDocument.FormFields(„Name“).Result

If ActiveDocument.FormFields(„Anrede“).Result = „Firma“ _
Then ActiveDocument.FormFields(„Name2“).Delete

If ActiveDocument.FormFields(„Anrede“).Result = „Firma“ _
Then ActiveDocument.FormFields(„Anrede2“).Result = „geehrte Damen und Herren“
If ActiveDocument.FormFields(„Anrede“).Result = „geehrte Damen und Herren,“ _
Then ActiveDocument.FormFields(„Name2“).Result = " "

If ActiveDocument.FormFields(„Anrede“).Result = „“ _
Then ActiveDocument.FormFields(„Name2“).Delete

If ActiveDocument.FormFields(„Anrede“).Result = „“ _
Then ActiveDocument.FormFields(„Anrede2“).Result = „geehrte Damen und Herren“
If ActiveDocument.FormFields(„Anrede“).Result = „geehrte Damen und Herren,“ _
Then ActiveDocument.FormFields(„Name2“).Result = " "

End Sub

Kann mir jemand helfen?
Danke im Voraus
Gruß Eva

Hallo Eva,
ich schreib Dir dazu heut gerne eine Lösungsmöglochkeit,
aber mvoher den hinweiss dass
diese programierungeigentlich in die Datenquelle gehört
z.b. Ecxel, access…
das wäre das einfachste und sauberste…
Guss Robert

Hallo Eva,
hier ein Lösungsvorschlag, wie man dasaufbauen könnte

Public Sub AnNaKop()

Dim Anrede As FormField
Dim doc As Document

Dim a1, a2, n, briefanrede as string

a = ActiveDocument.FormFields(„Anrede“).Result
a2 = ActiveDocument.FormFields(„Anrede2“).Result
k = ", "

if a = „Herrn“ Then briefanrede = "Sehr geehrter Herr " & n & k
if a = „Frau“ Then briefanrede = "Sehr geehrte Frau " & n & k
if a = „Firma“ Then briefanrede = „Sehr geehrte Damen und Herren“ & k

ActiveDocument.FormFields(„Anrede2“).Result = briefanrede

End Sub

VG, Robert

Vielen Dank Robert, für Deine schnellen Bemühungen.
Konnte erst jetzt antworten, da letzte Woche Internet futsch :frowning:

VG Eva