Language settings in Word 2013

Hi,

I am editing a document that seems to have small portions set to Hebrew. When I add a comment, my comments are written backwards. I have been through the language options (set proofing language & language preferences) in the Review tab, but while all are set to English UK, the comments are still being written backwards and Word is still saying there is hidden Hebrew in the document. In Word 2007 I had a 'language' set of options at the bottom of the page (next to page numbers and word numbers) but it isn't being displayed in Office 2013. I right clicked on the blue toolbar to 'add' it, but it is already ticked and I can't work out how to get this to display.

Does anyone have any suggestions about how I can solve this and convert the entire document back to English UK and remove all of the Hebrew sections?

Thank you

Answer
Answer

Because the proofing language is a character attribute that could be applied to as little as a single character anywhere in the document (including nonprinting characters that are normally invisible), it can be difficult to find and change. The following macro, based on the one in http://www.word.mvps.org/FAQs/Customization/ReplaceAnywhere.htm, should do a thorough job. If you need instructions on how to install the macro, see http://www.gmayor.com/installing_macro.htm.

Note that the macro is specific to converting the proofing language from Hebrew to English UK. For any other pair of languages, you would need to change the two LanguageID values near the end of the code.

Sub ProofAllHebrewToEnglishUK()
    Dim rngStory As Word.Range
    Dim lngJunk As Long
    Dim oShp As Shape
    
    'Fix the skipped blank Header/Footer problem
    lngJunk = ActiveDocument.Sections(1).Headers(1).Range.StoryType
    'Iterate through all story types in the current document
    For Each rngStory In ActiveDocument.StoryRanges
      'Iterate through all linked stories
      Do
        SearchAndReplaceInStory rngStory
        On Error Resume Next
        Select Case rngStory.StoryType
        Case 6, 7, 8, 9, 10, 11
          If rngStory.ShapeRange.Count > 0 Then
            For Each oShp In rngStory.ShapeRange
              If oShp.TextFrame.HasText Then
                SearchAndReplaceInStory oShp.TextFrame.TextRange
              End If
            Next
          End If
        Case Else
          'Do Nothing
        End Select
        On Error GoTo 0
        'Get next linked story (if any)
        Set rngStory = rngStory.NextStoryRange
      Loop Until rngStory Is Nothing
    Next
End Sub
Public Sub SearchAndReplaceInStory(ByVal rngStory As Word.Range)
  With rngStory.Find
    .Format = True
    .ClearFormatting
    .Replacement.ClearFormatting
    .LanguageID = wdHebrew
    .Replacement.LanguageID = wdEnglishUK
    .Wrap = wdFindContinue
    .Execute Replace:=wdReplaceAll
  End With
End Sub

_____________________________
https://jay-freedman.info

Was this reply helpful?

Sorry this didn't help.

Great! Thanks for your feedback.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this reply?

Thanks for your feedback.

 
 

Question Info


Last updated September 30, 2022 Views 1 Applies to: