Visual Basic for Applications (VBA): Aufrufen von Standarddialogfeldern

Das Aktivieren von Standarddialogen gehört zu den Dingen die ein Visual Basic for Applications-Programmierer häufig anwendetet. Das folgende Makro formatiert den markierten Text mit Schriftattributen und / oder mit einem Rahmen bzw. einer Schattierung. Der Dialog wdDialogFormatFont für die Festlegung der Zeicheneigenschaften und der Dialog wdDialogFormatBordersAndShading für den Rahmen und die Schattierung werden dabei nacheinander aufgerufen. Beim verlassen der Dialogfelder wird dann festgestellt über welche Schaltfläche das geschehen ist. Das Ergebnis wird in der gleichnamigen Variablen gespeichert und in der If … Then … Else-Struktur ausgewertet, sowie dem Anwender über ein Nachrichtenfenster mitgeteilt.

Sub ZeichenRahmenDialogAufrufen()

‚ Ruft die Dialoge Zeichen und Rahmen / Schattierung

‚  auf und weist die dort eingestellten Attribute

‚  dem markierten Text zu.

Dim Ergebnis1, Ergebnis2 As Integer

Set ZeichenDlg = Dialogs(wdDialogFormatFont)

Set RahmenDlg = Dialogs(wdDialogFormatBordersAndShading)

Ergebnis1 = ZeichenDlg.Show

Ergebnis2 = RahmenDlg.Show

If (Ergebnis1 = -1) And (Ergebnis2 = -1) Then

MsgBox „Die Markierung wird mit Rahmen- und Schriftattributen formatiert.“, vbInformation, „Dialog verlassen“

ElseIf (Ergebnis1 = -1) And (Ergebnis2 = 0) Then

MsgBox „Die Markierung wird nur mit Schriftattributen formatiert.“, vbInformation, „Dialog verlassen“

Else: Ergebnis1 = 0 And Ergebnis2 = -1

MsgBox „Die Markierung wird nur mit Rahmenattributen formatiert“, vbInformation, „Dialog verlassen“

End If

End Sub

Das Makro ruft zwei Word-Dialoge auf und weist die Einstellungen dem markierten Text zu. Zuerst wird das Dialogfeld ZEICHEN aufgerufen. Danach das Dialogfeld RAHMEN UND SCHATTIERUNG.

Nachdem alle Einstellungen gemacht wurden ist der markierte Text wie gewünscht formatiert. Die Standarddialoge von Word 2000 werden über die Methode Show aufgerufen. Diese ist im Gegensatz zur Methode Display auch in der Lage, die durchgeführten Einstellungen an den markierten Text weiterzugeben. Das Ergebnis kann dann wie folgt aussehen.

Nach oben scrollen