Wie ändere ich die Sprache aller Powerpoint-Folien auf einmal?

Wie ändere ich die Sprache aller Powerpoint-Folien auf einmal?

Ich möchte die Korrektursprache aller meiner Folien in einer Powerpoint-Präsentation ändern. Ich habe versucht, die Sprache über das Menü „Spracheinstellungen“ einzustellen, aber dadurch wird sie nur für neue Powerpoint-Präsentationen geändert.

Antwort1

Um die Sprache desgesamtePowerPoint ganz einfach öffnen,Sichtund wählen Sie dieGliederungSicht.

Jetzt drücken

  • Ctrl+, Aum alles auszuwählen.
  • WerkzeugeSprache→ Wählen Sie die gewünschte Sprache aus.

Ebenso können Sie, während Sie alles ausgewählt haben, andere Dinge wie Schriftarten, Farben usw. ändern. Obwohl dies in vielen Fällen natürlich besser durch Ändern des Folienmasters erreicht werden kann, kann eine Präsentation, die viele Redakteure hatte, viele „harte“ Formatierungssätze enthalten, die vom zugrunde liegenden Master abweichen und zur Konsistenz zurückgesetzt werden müssen. Sie können auch einzelne Folien auf den Masterstil zurücksetzen, dies kann jedoch dazu führen, dass sich auch Platzhalter verschieben, was in manchen Situationen unerwünscht sein kann.

PowerPoint 2013

  • SichtGliederung→ alle Folien (im linken Menü) über Ctrl+ auswählen A.
  • RezensionSpracheKorrektursprache festlegen ...→ Wählen Sie die gewünschte Sprache aus.

Was mich betrifft - PowerPointNeustartwar nötig. Wahrscheinlich, weil ich auch geändert habeSprache bearbeiten:

  • RezensionSpracheKorrektursprache festlegen ...SpracheinstellungenWählen Sie Bearbeitungssprachen.

Antwort2

Verwenden vonPowerPoint 2010Ich öffnete das Menü „Gliederung“ -

Registerkarte „Gliederung“

Den gesamten Text ausgewählt (Strg+A), das Sprachmenü geöffnet und meine Korrektursprache festgelegt

Sprachoption

Und es hat funktioniert!

Das Sprachmenü befindet sich auf der Menübandregisterkarte „Überprüfen“ (nach der Registerkarte „Diashow“ und auf dem Screenshot nicht sichtbar).

Antwort3

Ich habe mich verbessertInigos Antwortum eine rekursive Version bereitzustellen, die alle Elemente in die gewünschte Sprache ändert.

Diese Version untersucht rekursiv jede Form, die ein Gruppentyp ist. Einige Experimente legen nahe, dass msoGroupund msoSmartArtdie Gruppentypen sind. Sie können diese Liste gerne ergänzen, wenn Sie andere Formentypen finden, die Textobjekte enthalten können.

Sub ChangeProofingLanguageToEnglish()
    Dim j As Long, k As Long
    Dim languageID As MsoLanguageID

    'Set this to your preferred language
    languageID = msoLanguageIDEnglishUK

    For j = 1 To ActivePresentation.Slides.Count
        For k = 1 To ActivePresentation.Slides(j).Shapes.Count
            ChangeAllSubShapes ActivePresentation.Slides(j).Shapes(k), _
              languageID
        Next k
    Next j
End Sub


Sub ChangeAllSubShapes(targetShape As shape, languageID As MsoLanguageID)
    Dim i As Long

    If targetShape.HasTextFrame Then
        targetShape.TextFrame.TextRange.languageID = languageID
    End If

    Select Case targetShape.Type
        Case msoGroup, msoSmartArt
            For i = 1 To targetShape.GroupItems.Count
                ChangeAllSubShapes targetShape.GroupItems.Item(i), languageID
            Next i
    End Select
End Sub

Antwort4

Basierend auf den Antworten von Inigo, Duncan, Maria und DomDev funktioniert dies jetzt und in Zukunft für Formen, Tabellen, Gruppen, SmartArt:

Sub ChangeProofingLanguageToFrench()
    Dim j, k As Integer
    Dim languageID As MsoLanguageID

    'Set this to your preferred language
    languageID = msoLanguageIDFrench

    'Loop all the slides in the document, and change the language
    For j = 1 To ActivePresentation.Slides.Count
        For k = 1 To ActivePresentation.Slides(j).Shapes.Count
            ChangeAllSubShapes ActivePresentation.Slides(j).Shapes(k), languageID
        Next k
    Next j

    'Loop all the master slides, and change the language
    For j = 1 To ActivePresentation.SlideMaster.CustomLayouts.Count
        For k = 1 To ActivePresentation.SlideMaster.CustomLayouts(j).Shapes.Count
            ChangeAllSubShapes ActivePresentation.SlideMaster.CustomLayouts(j).Shapes(k), languageID
        Next k
    Next j

    'Change the default presentation language, so that all new slides respect the new language
    ActivePresentation.DefaultLanguageID = languageID
End Sub

Sub ChangeAllSubShapes(targetShape As Shape, languageID As MsoLanguageID)
    Dim i As Integer, r As Integer, c As Integer

    If targetShape.HasTextFrame Then
        targetShape.TextFrame.TextRange.languageID = languageID
    End If

    If targetShape.HasTable Then
        For r = 1 To targetShape.Table.Rows.Count
            For c = 1 To targetShape.Table.Columns.Count
                targetShape.Table.Cell(r, c).Shape.TextFrame.TextRange.languageID = languageID
            Next
        Next
    End If

    Select Case targetShape.Type
        Case msoGroup, msoSmartArt
            For i = 1 To targetShape.GroupItems.Count
                ChangeAllSubShapes targetShape.GroupItems.Item(i), languageID
            Next i
    End Select
End Sub

verwandte Informationen