How to change the default language on all PowerPoint slides

Here is the case - you receive a presentation from someone else and find out that the default language for all text box is a foreign language while the context is English. When this happens, ydo not even try to reset the language (a default would only apply to new slides). Two possibilities offers itself:

Language setting option and outline view

Other possibility includes going to the outline view (second icon from the bottom left corner of a PowerPoint presentation in the XP version).  Then Ctrl-A to select all and go to "Tools" -> "Language"and choose your language to set. In some cases, slide titles may not be transformed for some reason.

The macro trick below works like a charm in all tested cases ... you may want to save such macro for future.

VBS solution

Here is a recipe however I found on the internet (in this thread ). The steps are pretty straight forward.

  1. Go to Tools, Macro, Visual Basic Editor.
  2. Insert a new empty module by selecting Insert, Module.
  3. Paste this code on the right panel and save the macro:
    Option Explicit  
    Public Sub ChangeSpellCheckingLanguage()  
        Dim j As Integer, k As Integer, scount As Integer, fcount 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
            Next k
        Next j
    End Sub

    msoLanguageIDEnglishUS can be replaced by any desired language. The full list of languages can be found here.

  4. Execute the macro (by pressing F5 within the editor, or by selecting Tools, Macro, Macros, ChangeSpellCheckingLanguage, and clicking Run).

After that all text elements within the presentation will have the new spelling language. Neat.