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

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

  • Как я могу избавиться от помощника клипа Microsoft «Clippy»?
  • Microsoft Word внезапно не сохранит файлы; «Слово не может создать рабочий файл - проверьте переменную среды temp»
  • Обновление текстового документа MS из двух других документов
  • Обновление Microsoft (MSU) не находит обновлений для других продуктов Microsoft (например, Office) после обновления MSU
  • Перспективы: планирование повторяющихся вне офиса?
  • Можно ли установить Helvetica для Microsoft Office?
  • Как остановить использование файла excel?
  • Как сделать файлы Powerpoint открытыми с помощью Quick Look по умолчанию в Mac OS X?
  • Ярлыки клавиш в неанглийской версии Microsoft Office
  • Outlook не показывает уведомления на рабочем столе при получении сообщения
  • Как я могу автоматически конвертировать PowerPoint в PDF?
  • Любые способы добавления новых (отредактированных) сокращений в OneNote 2010?
  • 7 Solutions collect form web for “Как изменить язык всех слайдов Powerpoint сразу?”

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

    Чтобы легко изменить язык всей PowerPoint, откройте вкладку « Вид » и выберите представление « Структура» .

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

    • Ctrl + A, чтобы выбрать все.
    • ИнструментыЯзык → Выберите язык для установки.

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

    PowerPoint 2013

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

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

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

    Используя Powerpoint 2010, я открыл меню Outline –

    Вкладка

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

    Языковой вариант

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

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

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

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

    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», который используется в вышеуказанном макросе, может быть заменен на любой желаемый язык. Полный список языков можно найти в этой статье

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

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

    Эта версия будет рекурсивно исследовать каждую форму, которая является групповым типом. Некоторые эксперименты показывают, что 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 

    Версия 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 

    Основываясь на ответах 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 

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

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

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