Makro: Chemische Formeln schneller schreiben

Wenn Sie hΣufig chemische Formeln schreiben mⁿssen, k÷nnen Sie sich mit dem folgenden Makro viele Mausklicks sparen. Das Makro formatiert nΣmlich alle Zahlen im zuletzt geschriebenen Wort als tiefgestellt. Um das Makro einzugeben, fⁿhren Sie den Befehl ╗Extras | Makro | Makros½ aus. Geben Sie einen Namen wie zum Beispiel ╗ChemieMakro½ ein und klicken Sie anschlie▀end auf die SchaltflΣche ╗Erstellen½. Nun geben Sie im VBA-Editor die folgenden Anweisungen ein. Oder schneller: Kopieren Sie sie von der beiliegenden Heft-CD. Sie finden das Makro unter CHIP-Code CHEMIE

Public Sub ChemieMakro ()

Dim Wortlaenge As Byte

Dim CharPos As Byte

Selection.MoveLeft

Unit:=wdWord,

Extend:=wdExtend

Wortlaenge = Selection.

Characters.Count

For CharPos = 1 To Wortlaenge

If (Asc (Selection.

Characters  (CharPos))

<59)And (Asc (Selection.

Characters (CharPos))>47)

Then Selection.

Characters (CharPos) .

Font.Subscript = True

End If Next CharPo s

Selection.MoveRight

Unit:=wdWord,

Extend:=wdMove

Selection.Font.Subscript

= False

End Sub
Und so funktioniert das Listing: Nach der Variablendefinition setzen die nΣchsten Befehle den Cursor an den Wortanfang und bestimmen die WortlΣnge. Die folgende Schleife testet anhand des ASCII-Codes jedes einzelne Zeichen im Wort, ob es sich um eine Ziffer handelt. In diesem Fall aktiviert das Makro das Format ╗tiefgestellt½. Schlie▀lich kommt der Cursor wieder an das Wortende und das Format in den Normalzustand. Das Makro k÷nnen Sie natⁿrlich auch auf eine Tastenkombination legen. Dazu fⁿhren Sie den Befehl ╗Extras | Anpassen½ aus und klicken auf die SchaltflΣche ╗Tastatur½. WΣhlen Sie links die Kategorie ╗Makros½ und rechts das zuvor verfasste ╗ChemieMakro½. Setzen Sie nun den Cursor in das Eingabefeld ╗Neuen Shortcut drⁿcken½ und wΣhlen Sie die gewⁿnschte Tastenkombination. Dann klicken Sie auf ╗Zuordnen½ und beenden den Dialog mit ╗Schlie▀en½. Nun k÷nnen Sie eine Zeichenfolge durch Drⁿcken der Tastenkombination in eine chemische Formel verwandeln.