Вопрос: Как изменить язык всех слайдов Powerpoint сразу?


Я хочу изменить язык проверки всех моих слайдов в Powerpoint. Я попробовал установить язык через меню «Настройки языка», однако это только изменяет его для новых PowerPoint.


127
2018-06-04 10:01


Источник


Возможный дубликат Измените язык проверки орфографии в презентации PowerPoint - sancho.s
Похоже, что новейшая версия PowerPoint особенно неудобна в этом отношении. У меня есть текстовое поле, в котором я изменил язык всего текста на язык A. (Язык по умолчанию - B.) Поэтому, когда я начинаю печатать в этом текстовом поле, язык автоматически изменяется на B. Я думал, возможно, изменив значение по умолчанию язык помогает (пробовал все остальное), но нет. Теперь языком по умолчанию является A, язык всего другого текста в текстовом поле - A (и я перезапустил PP), но весь новый текст по-прежнему отображается как B. Поэтому мой единственный оставшийся вопрос: есть ли способ переключения проверки вообще? - lebatsnok
Да, есть способ превратить проверку орфографии: support.microsoft.com/en-us/help/937422/... - решила моя проблема! - lebatsnok


Ответы:


Я знаю, что ответ уже принят, но это только изменяет язык проверки Один текстовое поле и требует, чтобы вы изменили все их вручную.

Чтобы изменить язык все PowerPoint легко, откройте Посмотреть и выберите Контур Посмотреть.

Теперь нажмите

  • Ctrl+ для выбора всех.
  • инструменты → язык → Выберите язык для установки.

Аналогично, если у вас есть все, вы можете изменить другие вещи, такие как шрифты, цвета и т. Д. Хотя, конечно, во многих случаях это лучше сделать, изменив мастер слайдов, презентация, в которой было много редакторов, может иметь множество «жестких» форматирования, которые отклоняется от основного хозяина и требует сброса, чтобы быть последовательным. Вы также можете сбросить отдельные слайды на мастер-стиль, но это может привести к тому, что перемещающиеся места также могут быть нежелательными в некоторых ситуациях.

PowerPoint 2013

  • Посмотреть → Контур → выберите все слайды (в левом меню) через Ctrl+,
  • Обзор → язык → Установить язык проверки ... → Выберите язык для установки.

Что касается меня - PowerPoint перезапуск был необходим. Возможно, потому, что я тоже изменил Редактирование языка:

  • Обзор → язык → Установить язык проверки ... → Языковые настройки → Выберите Редактирование языков,

143
2018-03-17 17:29



Благодарим за ответ, но после изменения языка новый напечатанный текст все еще находится на предыдущем языке (по умолчанию). Более того, если вы перейдете на мастер-слайды, выберите слайд, вы заметите, что язык на языковой панели по-прежнему по умолчанию, а меню для его изменения выделено серым цветом. Я с ума сошел, что Microsoft так долго не решалась Microsoft. - Endrju
Потрясающие! Хотя это и не идеально, это, безусловно, помогает. Я согласен с @ Эндрю, почему это еще не исправлено ?! - Mike
Для записи в Office 2013 меню «Язык» находится на панели «Обзор» (Set Proofing Language) - Maria Ines Parnisari
Powerpoint просто потрясающе плохо, не так ли? Я действительно скучаю, используя открытый офис, когда у меня есть такие проблемы. Я вернусь, чтобы открыть офис, как только они будут поддерживать сохранение видео. - mjaggard
@Endrju Вы должны изменить язык для PowerPoint на панели задач Windows, чтобы новый текст текста был на новом языке. См. Подробности в мой ответ, Это очень раздражало меня за такое долгое время ... - Gas


С помощью Powerpoint 2010 Я открыл меню Outline -

outline tab

Выбрал весь текст (Ctrl + A), открыл языковое меню и установил язык проверки

language option

И это сработало!

Языковое меню расположено на вкладке «Обзор ленты» (после вкладки «Слайд-шоу» и не отображается на снимке экрана).


34
2018-06-04 10:01



Работает только для одного слайда - Helge Klein
Это работает для основных макетов слайдов. Он не будет изменять язык для текста внутри текстовых полей или вложен в другие формы. - Duncan Jones
Работает и на Office 2007. - Alfredo Osorio
Работал и на Office Mac. - Jim McKeeth


Существующие ответы работают для текста, который присутствует в схеме. К сожалению, в моем случае это не охватывало значительную часть текста, включая цифры, таблицы и т. Д.

Этот макрос решил проблему для меня:

 Sub ChangeProofingLanguageToEnglish()
    Dim j, k, m, scount, fcount, gcount As Integer
    scount = ActivePresentation.Slides.Count
    For j = 1 To scount
        fcount = ActivePresentation.Slides(j).Shapes.Count
        For k = 1 To fcount
            If ActivePresentation.Slides(j).Shapes(k).HasTextFrame Then
                ActivePresentation.Slides(j).Shapes(k) _
                .TextFrame.TextRange.LanguageID = msoLanguageIDEnglishUS
            End If
            If ActivePresentation.Slides(j).Shapes(k).Type = msoGroup Then
                gcount = ActivePresentation.Slides(j).Shapes(k).GroupItems.Count
                For m = 1 To gcount
                    If ActivePresentation.Slides(j).Shapes(k).GroupItems.Item(m).HasTextFrame Then
                    ActivePresentation.Slides(j).Shapes(k).GroupItems.Item(m) _
                    .TextFrame.TextRange.LanguageID = msoLanguageIDEnglishUS
            End If
                Next m
            End If
        Next k
    Next j
End Sub

«MsoLanguageIDEnglishUS», который используется в вышеуказанном макросе, может быть заменен любым желаемым языком. Полный список языков можно найти в Эта статья

(Кредит отправляется Ганешу Кумару, который опубликовал оригинальный макрос Вот, Я добавил поддержку первого уровня группировки фигур. Для дальнейшего улучшения макрос можно сделать рекурсивным для поиска групп, которые содержат другие группы и т. Д.)


18
2017-08-09 08:11



+1 Хорошее начало. Видеть мой ответ для полностью рекурсивной версии, основанной на этом ответе. - Duncan Jones


Я улучшил Ответ Иниго для предоставления рекурсивной версии, которая изменяет все элементы на нужный язык.

Эта версия будет рекурсивно исследовать каждую форму, которая является групповым типом. Некоторые эксперименты показывают, что msoGroup а также msoSmartArt типы групп - не стесняйтесь добавлять в этот список, если вы обнаружите, что другие типы фигур могут содержать текстовые объекты.

Sub ChangeProofingLanguageToEnglish()
    Dim j, k As Integer
    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 Integer

    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

16
2017-11-25 09:52



При работе в PowerPoint 16.10 на OSX я получаю: Compile error: Method or data member not found - Etienne Low-Décarie


Основываясь на ответах Inigo, Duncan, Maria и DomDev, это работает для фигур, таблиц, групп 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

7
2017-07-09 09:41



Что касается других решений, то при работе в PowerPoint 16.10 на OSX я получаю: Compile error: Method or data member not found, Любые предлагаемые решения? Кажется, что .DefaultLanguageID, - Etienne Low-Décarie
@ EtienneLow-Décarie: API, возможно, изменился в PowerPoint 16; У меня его нет, поэтому я не могу проверить, извините. - tricasse


Версия Duncan хорошо работает для всего, кроме таблиц. Я нашел еще один код, который, похоже, также работает с таблицами: https://stackoverflow.com/questions/4735765/powerpoint-2007-set-language-on-tables-charts-etc-that-contains-text 

Public Sub changeLanguage()
    On Error Resume Next
    Dim gi As GroupShapes '<-this was added. used below
    'lang = "English"
    lang = "Norwegian"
    'Determine language selected
    If lang = "English" Then
        lang = msoLanguageIDEnglishUK
    ElseIf lang = "Norwegian" Then
        lang = msoLanguageIDNorwegianBokmol
    End If
    'Set default language in application
    ActivePresentation.DefaultLanguageID = lang

    'Set language in each textbox in each slide
    For Each oSlide In ActivePresentation.Slides
        Dim oShape As Shape
        For Each oShape In oSlide.Shapes
            'Check first if it is a table
            If oShape.HasTable Then
                For r = 1 To oShape.Table.Rows.Count
                    For c = 1 To oShape.Table.Columns.Count
                    oShape.Table.Cell(r, c).Shape.TextFrame.TextRange.LanguageID = lang
                    Next
                Next
            Else
                Set gi = oShape.GroupItems
                'Check if it is a group of shapes
                If Not gi Is Nothing Then
                    If oShape.GroupItems.Count > 0 Then
                        For i = 0 To oShape.GroupItems.Count - 1
                            oShape.GroupItems(i).TextFrame.TextRange.LanguageID = lang
                        Next
                    End If
                'it's none of the above, it's just a simple shape, change the language ID
                Else
                    oShape.TextFrame.TextRange.LanguageID = lang
                End If
            End If
        Next
    Next End Sub

6
2018-05-22 13:36





В дополнение к ответам, предоставленным Mastergalen и адресовать комментарии относительно текста нового типа:

Если вы заметите, что этот язык автоматически изменится, когда вы начнете вводить новый текст (что очень раздражает), вам необходимо изменить текущий язык по умолчанию для PowerPoint:

  • убедитесь, что окно PowerPoint является активным окном
  • в Windows Taskbar (да, фактически не в PowerPoint), проверьте, Language bar видимо,
    • если не пойти Control Panel > Region and Language > Keyboards and Languages, Нажмите Change keybords..., переключить на Language bar вкладка и проверка Docked in the taskbar вариант. (это от Win7, поэтому в других версиях может быть немного отличаться).
  • теперь ключевое действие - в Language bar в панели задач, нажмите код языка и переключитесь на EN (если вы хотите в настоящее время использовать английский язык в PowerPoint). С этого момента весь новый текст в PowerPoint будет на выбранном языке :-)
  • если вы хотите писать на своем родном языке, просто измените его.

2
2017-07-04 12:52



О Боже, зачем им это делать ?! Спасибо, отлично работал. - Thibault D.
В точку! следует добавить к принятому ответу. - Abdelhafid Madoui
Но это также изменяет раскладку клавиатуры, не так ли? ... Я хочу напечатать текст на английском, но я действительно хочу сохранить свою раскладку на немецком языке ... - Johannes S.
@JohannesS. Если вы щелкните правой кнопкой мыши En в панели задач и выберите Settings.. вы увидите на языках Установленных языков немецкий (DE) и английский (En), если вы расширите английский, будет Keyboards перечисленные, разверните Клавиатуры и добавьте свою предпочитаемую немецкую клавиатуру, возможно, также удалите английский язык. Я не пробовал, но должен работать в теории ;-) - Gas


Я сделал надстройку в 2014 году для себя, которая все еще отлично работает в PowerPoint 2016. https://github.com/wobba/officeaddin/releases/tag/v1.0.1

Он сканирует используемые языки и позволяет вам изменять все сразу, перебирать.

enter image description here


2
2017-10-20 11:42