Leeres Textformularfeld zum Ausfüllen per VBA

Hallo

Ich habe im Word 2003 ein Formular kreiert. Oben auf der Seite 1 ist unter anderem das Dropdown-Formularfeld Dropdown1. Darin kann man verschiedene Elemente auswählen (z. B. Produkt 1, Produkt 2, Produkt 3 etc.). Anschliessend folgen viele Kontrollkästchen-Formalfelder sowie Textformularfelder zum Ausfüllen. Weiter unten, auf Seite drei, soll, wenn im Dropdown1 ein bestimmtes Element ausgewählt wurde (z. B. Produkt 1), ein Textformularfeld, das man selbst befüllen kann, erscheinen. Wenn jedoch im Dropdown1 ein anderes Element ausgewählt wurde (z. B. Produkt 2), soll dieses Textformularfeld nicht angezeigt werden.

Mir ist bewusst, dass das mit einer einfachen IF-Abfrage nicht möglich ist. Deshalb habe ich eine ganze Weile im Internet nach einem passenden VBA-Code gesucht und mehrere ausprobiert, aber leider nie mit der gewünschten Wirkung. Dazu muss ich sagen, dass ich mich mit VBA leider (noch) nicht besonders gut auskenne.

Wer kann mir weiterhelfen?

Vielen Dank und Gruss,
dadii

Hallo Dadii,

lad doch mal so ein Formular hoch mit file upload, s. FAQ:2606

Gruß
Reinhard

Hallo Dadii,

  • füge in Dein Formular ein Modul ein und tippe folgende Prozedur ein:

    Sub TextVisible() 'MH 04.02.11
    'schaltet die Anzeige des Textfelds abhängig v. Ergebnis des Dropdownfelds um
    On Error Resume Next
    With ActiveDocument.FormFields
    If .Item(1).Result = 1 Then .Item(2).Enabled = False
    End With 'ActiveDocument.FormFields
    End Sub 'TextVisible

wobei Du
.Item(1) durch .Item(„Dropdown1“) und
.Item(2) durch .Item(„NameDerTextmarkeVomUmzuschaltendenTextfeld“)
ersetzen mußt

  • klicke die Formularfeld-Optionen von Dropdown1 an und weise ihm unter Makro ausführen bei Beenden das obige Makro (das sich in der Auswahlliste finden sollte) zu.

HTH.

Markus
_______________
Und Sterne sammel ich noch immer…

Hallo Markus

Besten Dank für den Code. Leider funktioniert er bei mir nicht wie gewüscht. Wenn ich das Formular erstmals nach dem Erfassen des Codes sperre und benütze, funktioniert es, aber wenn ich dann die Auswahl im Dropdown1 ändere, bleibt das Textfeld immer gesperrt, auch wenn ich „Produkt 1“ auswähle.

Hast du eine Ahnung, was ich falsch machen könnte?

Besten Dank und Gruss,
dadii

Hast du eine Ahnung, was ich falsch machen könnte?

Hallo dadii,

lade mal eine Beispieldoc hoch mit file-upload o.ä, s. FAQ:2606

Gruß
Reinhard