Correct spelling is different on slide and notes page?

  • Thread starter Thread starter Jon Fleming
  • Start date Start date
J

Jon Fleming

I am using PowerPoint 2000 SP3 (9.0.6620) in Windows XP Pro SP1; both
of them have all hot fixes. The regional settings in Control Panel
are set to "English (United States)", although it once was set to
"English (Canada)".

When I spell check, PP insists on some UK=style spellings such as
"behavior" should be spelled "behaviour". OK, I can live with that
and have added "behavior" and several variations to my custom
dictionary.

However, the spell checker insists that "counselor" is spelled
correctly when it appears on a slide but should be spelled
"counsellor" when it appears on the notes page of the same slide, with
the same case.

WTF??
 
Those are both words. Look it up in the dictionary.
I'm not sure what it is if it does that with different
words?!?
 
What is the language ID on the textboxes in question? (Tools/Language)

It could be that those are leftover from when you had the settings set
to English (Canada).
 
What is the language ID on the textboxes in question? (Tools/Language)

By gum, you've got it! Thank you. That was the problem. I wasn't
aware that all text has a language ID.

Do you know of a way that I can apply U.S. English language ID to
everything in the presentation? I'm moderately facile in VBA, and I
bet I could write it, but I prefer not to re-invent the wheel.
It could be that those are leftover from when you had the settings set
to English (Canada).

Unlikely, given the long history many of the slides that went into
this presentation, but certainly possible.
 
[CRITICAL UPDATE - Anyone using Office 2003 should install the critical
update as soon as possible. From PowerPoint, choose "Help -> Check for
Updates".]

Hello,

PowerPoint only provides the ability to change selected text to a specific
Language ID setting and, since you cannot always select all text in a
presentation at the same time you cannot change the language of all text in
a presentation in one step (without using VBA or add-ins).

Q245468 - Sample Code to Change the Language ID of a Text Box
http://support.microsoft.com/?id=245468

If you (or anyone else reading this message) think that there should be
additional language setting/detection/etc. features in PowerPoint, don't
forget to send your feedback (in YOUR OWN WORDS, please) to Microsoft at:

http://register.microsoft.com/mswish/suggestion.asp

As with all product suggestions, it's important that you not just state
your wish but also WHY it is important to you that your product suggestion
be implemented by Microsoft. Microsoft receives thousands of product
suggestions every day and we read each one but, in any given product
development cycle, there are only sufficient resources to address the ones
that are most important to our customers so take the extra time to state
your case as clearly and completely as possible.

IMPORTANT: Each submission should be a single suggestion (not a list of
suggestions)..

John Langhans
Microsoft Corporation
Supportability Program Manager
Microsoft Office PowerPoint for Windows
Microsoft Office Picture Manager for Windows

For FAQ's, highlights and top issues, visit the Microsoft PowerPoint
support center at: http://support.microsoft.com/default.aspx?pr=ppt
Search the Microsoft Knowledge Base at:
http://support.microsoft.com/default.aspx?pr=kbhowto

This posting is provided "AS IS" with no warranties, and confers no rights.
Use of any included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm
 
PowerPoint only provides the ability to change selected text to a specific
Language ID setting and, since you cannot always select all text in a
presentation at the same time you cannot change the language of all text in
a presentation in one step (without using VBA or add-ins).

Q245468 - Sample Code to Change the Language ID of a Text Box
http://support.microsoft.com/?id=245468

Thank you for your post. I started with that code, and expanded it
quite a bit. There's either a bug or some bad practice in the sample
code. When I used:

If shp.Type = msoTextBox Or msoPlaceholder Then

for checking items inside groups, it executed the "then" clause for an
oval autoshape in the group, and the code that changed the Language ID
wound up changing the size and shape of the oval! The following works
much better:

If (shp.Type = msoTextBox) Or (shp.Type = msoPlaceholder) Then

I also found that, in Office 2000, programmatically or manually
changing the language ID has no effect unless there is some text in
the box

For future generations <grin> the following changes the language ID to
US English in all text boxes and placeholders, even ones inside
groups, except the various masters:

Option Explicit

Public Sub ChangeLanguageID()

Dim oSld As Slide
Dim oShp As Shape
Dim NewLanguageID As Long
Dim GroupItemCount As Long
Dim GroupItem As Long

' Change as desired for different languages
NewLanguageID = msoLanguageIDEnglishUS

For Each oSld In ActivePresentation.Slides
' First the slides
For Each oShp In oSld.Shapes
' If it's a group ...
If oShp.Type = msoGroup Then
' We need to iterate through the objects in the group
GroupItemCount = oShp.GroupItems.Count
For GroupItem = 1 To GroupItemCount
DoChangeLanguageID oShp.GroupItems(GroupItem), NewLanguageID
Next GroupItem
Else
' It's not a group, just do it
DoChangeLanguageID oShp, NewLanguageID
End If
Next oShp

' Now the notes pages
For Each oShp In oSld.NotesPage.Shapes
DoChangeLanguageID oShp, NewLanguageID
Next oShp

Next oSld

End Sub

' Returns True if the shape's language ID was changed, False otherwise
Function DoChangeLanguageID(oShp As Shape, NewLanguageID As Long) As
Boolean

DoChangeLanguageID = False

If ((oShp.Type = msoTextBox) Or (oShp.Type = msoPlaceholder)) _
And oShp.HasTextFrame Then
' It's not going to work (at least in Office 2000)
' unless there's some text.
' If there's no text ...
If oShp.TextFrame.TextRange.Text = "" Then
' Temporarily insert some text
oShp.TextFrame.TextRange.Text = " "
' Do the change
oShp.TextFrame.TextRange.LanguageID = NewLanguageID
' Restore the null text
oShp.TextFrame.TextRange.Text = ""
DoChangeLanguageID = True
Else
' Just do the change
oShp.TextFrame.TextRange.LanguageID = NewLanguageID
DoChangeLanguageID = True
End If

End If

End Function
 
Back
Top