Word 2010: Schriftart in Formeln

1 Antwort

Hallo,

ich habe für dieses Problem in der Vergangenheit mal ein Makro geschrieben. Leider ist es auf einem anderen Rechner gespeichert. Wenn ich wieder an dem Rechner bin, hänge ich es dir hier als Kommentar an.

Damit du schonmal weißt, wie man mit Makros umgeht und wo man sie hinpacken muss, kannst du dir mal das angehängte Video anschauen.

Nur so viel: Ohne Makro müsstest du jede Formel einzeln über die "Normaler Text"-Funktion in den Formeltools in normalen Text umwandeln, um sie dann in die Schriftart Calibri umwandeln zu können.

Wichtig: Es hat einen Grund, warum für die Formeln die Schriftart Cambria Math festgelegt ist. Denn in dieser Schriftart können wirklich alle mathematischen Funktionen vollständig dargestellt werden, da diese Schriftart auch alle dafür notwendigen Zeichen und Symbole enthält.

Je nachdem, wie komplex deine Formeln sind, kann es also sein, dass deine Formeln an machen Stellen dann nicht mehr sauber dargestellt werden, weil in Calibri möglicherweise die dafür benötigten Zeichen fehlen. Also kotrolliere hinterher deine Formeln nochmal auf deren Richtigkeit.

Gruß, BerchGerch

http://www.gutefrage.net/video/makros-in-microsoft-office-2010-einfuegen-ausfuehren-und-loeschen

So, hier das versprochene Makro.

Sub Alle_Formeln_in_normalen_Text_umwandeln_und_auf_Calibri_formatieren()

' Wandelt alle Formelcontainer des Dokuments in normalen Text um.

Dim intAnz As Integer, intTaste As Integer
Dim strDocName As String, strMsg As String
Dim i As Long

If Documents.Count = 0 Then
Beep
Exit Sub
End If

strDocName = ActiveDocument.Name
intAnz = ActiveDocument.OMaths.Count

' Mitteilung, falls keine Formelcontainer im Dokument vorhanden sind.
If intAnz = 0 Then
    Beep
    MsgBox "Das Dokument " & strDocName & " enthält keine Formelcontainer." & _
           " Der Vorgang wird abgebrochen.", _
           vbOKOnly + vbInformation, "Hinweis"
Exit Sub
End If

' Nachfrage, ob gefundene Formelcontainer wirklich umgewandelt werden sollen.
On Error GoTo 0
Beep
strMsg = "Das Dokument " & strDocName & " enthält " & intAnz & _
            " Formelcontainer." & Chr(10) & Chr(10) & "Sind Sie sicher," & _
            " dass diese alle in normalen Text umgewandelt und" & _
            " mit der Schriftart Calibri versehen werden sollen?"
intTaste = MsgBox(strMsg, vbYesNo + vbQuestion, "Bitte um Bestätigung")
If intTaste = vbNo Then Exit Sub

'Wandelt alle Formelcontainer in normalen Text um, wenn Nachfrage mit Ja beantwortet wird.
With ActiveDocument
    For i = 1 To .OMaths.Count
    .OMaths(i).ConvertToNormalText
Next i
End With

' Wandelt alle Zeichen im Dokument mit der Schriftart "Cambria Math" in die Schriftart "Calibri" um.
With ActiveDocument
    .Select
    If Selection.Font.Name = "Cambria Math" Then Selection.Font.Name = "Calibri"
End With

'Erstellt eine Meldung, wie viele Formelcontainer in normalen Text umgewandelt worden sind.
Beep
MsgBox "Es wurden " & intAnz & " Formelcontainer im Dokument in normalen Text umgewandelt" & _
       " und mit der Schriftart Calibri versehen.", _
       vbOKOnly + vbInformation, "Ergebnis"

End Sub

Wenn du noch Fragen hast, melde dich bitte.

Gruß, BerchGerch

0
@BerchGerch

Sorry, ich hab deine Frage nochmal durchgelesen. Ich habe angenommen, dass du deinen kompletten Text in Calibri haben möchtest, aber in deiner Frage schreibst du ja, dass du deinen kompletten Text gern in Cambria haben möchtest.

In diesem Fall, klicke einfach im Register Start in der Gruppe Formatvorlagen mit der rechten Maustaste im Schnellformatvorlagenkatalog auf die Formatvorlage Standard und dann auf Ändern....

In dem sich öffnenden Fenster stellst du dann einfach die Schriftart der Standardformatvorlage auf Cambria um und bestätigst mit ok. Das Makro brauchst du in diesem Fall nicht.

Gruß, BerchGerch

0

Was möchtest Du wissen?