windows – どのように私は一度にすべてのパワーポイントのスライドの言語を変更するには?

microsoft-office microsoft-powerpoint microsoft-powerpoint-2010 windows

パワーポイント内のすべてのスライドのプルーフィング言語を変更したいと思います。言語設定メニューから言語を設定してみましたが、これは新しいパワーポイントの場合にのみ変更されます

  180  None  2012-06-04


ベストアンサー

簡単にPowerPoint全体の言語を変更するには、[表示]タブを開き、[アウトライン]ビューを選択します

Now press

  • Ctrl+Aで全てを選択します
  • ツール → 言語 → 設定する言語を選択します

同様に、あなたが選択したすべてのものを持っている間は、フォント、色などのような他のものを変更することができます。もちろん、多くの場合、これはより良いスライドマスターを変更することによって行われますが、多くのエディタを持っていたプレゼンテーションは、基本的なマスターから逸脱し、一貫性があるようにリセットする必要がある “ハード “書式設定の多くを持っている可能性があります。また、マスタースタイルに個々のスライドをリセットすることができますが、これはいくつかの状況で望ましくないかもしれませんが、同様に移動プレースホルダになる可能性があります

PowerPoint 2013

  • 表示 → アウトライン → Ctrl+Aで全スライドを選択(左メニュー)
  • 復習 → 言語 → 設定する言語を…→ 設定する言語を選択してください

私の場合は – PowerPointの再起動が必要でした。たぶん、編集言語の変更もしたからだと思います

  • 復習 → 言語 → 校正言語の設定…→ 言語環境設定 → 編集言語を選択します

190  Mastergalen  2013-03-17


Powerpoint 2010を使用して、私はアウトラインメニューを開きました

outline tab

すべてのテキストを選択(Ctrl+A)し、言語メニューを開き、自分の校正言語を設定しました

language option

そして、うまくいった!

言語メニューはレビューリボンタブにあります(スライドショータブの後にあり、スクリーンショットでは見えません)

35  liamzebedee  2012-06-04


私はイニゴの回答を改良し、すべての項目を希望する言語に変更する再帰的なバージョンを提供するようにしました

このバージョンでは、グループタイプである各図形を再帰的に調査します。いくつかの実験では、msoGroupmsoSmartArt がグループタイプであることが示唆されています – テキストオブジェクトを保持できる他のタイプの図形を見つけたら、自由にこのリストに追加してください

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

26  Duncan Jones  2013-11-25


既存の解答は、アウトラインに存在するテキストに対して有効です。残念ながら私の場合は、図や表などのテキストのかなりの部分をカバーしていませんでした

このマクロが問題を解決してくれました

 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 “は、任意の言語に置き換えることができます。言語の完全なリストは、この記事にあります

(クレジットは、元のマクロ here を投稿した Ganesh Kumar さんにお願いします。私は第一レベルの図形グループ化のサポートを追加しました。さらに改良するために、他のグループを含むグループを探すために再帰的にマクロを作成することができます。)

25  Inigo  2013-08-09


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

12  tricasse  2016-07-09


また、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のすべての新しいテキストは、選択した言語になります。)
  • 元の言語で書きたければ、元の言語に戻してください

8  Gas  2016-07-04


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

7  Maria  2014-05-22


私は自分自身のために2014年に戻ってアドインを作りましたが、PowerPoint 2016ではまだ正常に動作します。https://github.com/wobba/officeaddin/releases/tag/v1.0.1

使用されている言語をスキャンして、ループオーバーしながら一度に変更することができます

enter image description here

3  Mikael Svenson  2017-10-20


他の方法ではどうしようもない場合は、スライドマスターの言語設定が原因で予期せぬ言語の変化が起こることもあります

変更するには、承諾された回答に記載されているように、表示>スライドマスターに移動し、親から一番上のマスタースライドを選択し、すべての要素を選択し、言語を変更します。この変更はすべてのレイアウトに反映されますが、プレースホルダテキストは元の言語のままになります

可能であれば、正しい言語で設定されたテンプレートを使用するのがクリーンな解決策です。しかし、会社が要求するテンプレートやオフィスのインストール、あるいは単に既存のファイルを修正しようとしている場合には、これができないかもしれません

0  kdb  2020-08-24


タイトルとURLをコピーしました