Monday 2 July 2018

Change the spell-checking language on a PowerPoint presentation


I received a PowerPoint presentation with dozens of slides, each of them with a number of text boxes. Although the presentation is written in English, the language for spell checking is set to Canadian French. I’m trying to change the language to English, but even if I select all the slides and select a new element on the Language dialog box, the language of the text boxes remain the same. So I have to go slide by slide selecting the text boxes and then changing the language individually.


Is there a better way to do this?


The version of PowerPoint I have installed is 2002 SP3.



Answer



This thread contains the answer that worked for me.


The steps I followed were:



  1. Create a new macro:
    1.1. Go to Tools, Macro, Visual Basic Editor.
    1.2. Insert a new empty module by selecting Insert, Module.


  2. 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 = msoLanguageIDEnglishAUS
    End If
    Next k
    Next j
    End Sub

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




  3. 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.


No comments:

Post a Comment

Where does Skype save my contact's avatars in Linux?

I'm using Skype on Linux. Where can I find images cached by skype of my contact's avatars? Answer I wanted to get those Skype avat...