Alterar o idioma de verificação ortográfica em uma apresentação do PowerPoint

39

Recebi uma apresentação do PowerPoint com dezenas de slides, cada um deles com várias caixas de texto. Embora a apresentação seja escrita em inglês, o idioma para verificação ortográfica é definido como francês canadense. Estou tentando alterar o idioma para o inglês, mas, mesmo se eu selecionar todos os slides e selecionar um novo elemento na caixa de diálogo Idioma, o idioma das caixas de texto permanecerá o mesmo. Então eu tenho que ir deslizar pelo slide selecionando as caixas de texto e, em seguida, alterando o idioma individualmente.

Existe uma maneira melhor de fazer isso?

A versão do PowerPoint que eu instalei é o 2002 SP3.

    
por Leonardo 14.10.2009 / 01:15

6 respostas

17

Este tópico contém a resposta que funcionou para mim.

Os passos que eu segui foram:

  1. Crie uma nova macro:
    1.1. Vá para Ferramentas, Macro, Editor do Visual Basic. 1.2. Insira um novo módulo vazio selecionando Inserir, Módulo.
  2. Cole este código no painel da direita e salve a 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 pode ser substituído por qualquer idioma desejado. A lista completa de idiomas pode ser encontrada aqui .

  3. Execute a macro (pressionando F5 no editor ou selecionando Ferramentas, Macro, Macros, ChangeSpellCheckingLanguage e clicando em Executar).

Depois disso, todos os elementos de texto da apresentação terão o novo idioma de ortografia.

    
por 27.10.2009 / 08:51
33

Eu sei que uma resposta já foi aceita (a qual eu dei +1 porque funciona e está bem escrita), mas para algumas pessoas a idéia de criar, salvar, usar uma macro pode ser muito assustadora (ou eles podem ter configurações de segurança que dificultam isso). Portanto, uma solução mais fácil é usar a funcionalidade interna normal para fazer isso. O truque é poder selecionar todos os objetos em todos os slides de uma só vez, em vez dos próprios slides, e isso é facilmente alcançado na visualização Outline (infelizmente um recurso pouco usado, mas ótimo para reorganizar um conjunto de slides, promovendo e rebaixando partes inteiras, por exemplo, marcadores > novos slides ou vice-versa).

Eu não tenho o PowerPoint 2002 ("XP"), então não tenho certeza se você precisa seguir as instruções para 2000 ou 2003, então eu abordo os dois aqui:

  • No PP 2000 : Vá para a vista de contorno, que é o segundo ícone da esquerda na parte inferior esquerda da tela (parece linhas com recuos).
  • No PP 2003 em diante : Vá para a visualização "normal" (layout de três painéis) e na parte superior do navegador de slides, escolha "estrutura de tópicos" em vez de "slides"

Em versões mais antigas, certifique-se de ter a barra de ferramentas Esboço visível ( Visualizar > Barras de ferramentas > Esboço ) e clique no botão Expandir todos os botões (versões posteriores permitem que você faça isso com o botão direito).

  • Ctrl-A para selecionar tudo.
  • Ferramentas > Idioma > Escolha o seu idioma para definir.
  • (do Powerpoint 2013) REVISÃO > Idioma > Definir linguagem de verificação

Trabalho feito.

Da mesma forma, enquanto você seleciona tudo, pode alterar outras coisas, como fontes, cores, etc. Embora, em muitos casos, isso seja melhor, alterando o slide master, uma apresentação que teve muitos editores conjunto de formatação que se desvia do mestre subjacente e precisa ser redefinido para ser consistente. Você também pode redefinir slides individuais para o estilo mestre, mas isso pode resultar na mudança dos espaços reservados, o que pode ser indesejável em algumas situações.

    
por 02.06.2010 / 12:10
3

Depois de muitas apresentações em que fiz isso manualmente ou usei uma macro única, finalmente quebrei e fiz disso um suplemento do PowerPoint adequado.

Enviei-o para o meu site: PowerPoint LanguageFixer

Ele cuida de:

  • definindo o idioma padrão
  • todas as formas com molduras de texto
  • quadros de texto em formas agrupadas (na medida do possível)
  • texto nas tabelas
  • coisas no slide / nota / mestre de folhetos

Basta definir uma das caixas de texto para o idioma desejado, selecioná-lo e clicar no botão.

    
por 05.02.2013 / 21:38
1

Aqui estão duas opções, dependendo da sua situação:

Situação 1: A cópia original do Office foi instalada a partir de uma mídia de instalação baseada no idioma francês canadense.

Você poderá definir o idioma padrão para inglês, mas as funções principais usarão o idioma nativo da mídia de instalação.

A única correção é desinstalar a versão em francês canadense e instalar a partir de uma mídia de instalação com base em inglês ou copiar / colar toda a apresentação em um novo documento e reformatar o formato.

.

Situação 2: Tudo parece ser inglês, mas em circunstâncias limitadas aparecem línguas estrangeiras.

Nesta situação, aqui estão as instruções de reparo do Office 2002:

  1. Clique no menu Iniciar
  2. Aponte para Programas
  3. Aponte para as ferramentas do Microsoft Office
  4. Clique em Configurações de idioma do Microsoft Office XP.
  5. Clique na guia Idiomas habilitados.
  6. Ir para a caixa Versão padrão do Microsoft Office
  7. Selecione o idioma que você deseja
  8. Clique em OK. Uma mensagem aparecerá informando quais alterações serão feitas.
  9. Clique em Continuar

Espero que isso ajude.

    
por 14.10.2009 / 20:11
0

Eu tive os mesmos problemas com apresentações feitas com o PowerPoint alemão e sendo traduzido manualmente para o inglês. O problema é que a configuração de idioma é essencialmente uma formatação aplicada a cada elemento de caixa de texto por conta própria.

Não tenho conhecimento de nenhuma solução conveniente - tive que conviver com a incompatibilidade ou alterar manualmente o "formato" de idioma de cada caixa de texto individual em cada slide. Não é divertido, então principalmente eu vivo com isso.

    
por 16.10.2009 / 17:10
0

O código postado por Leonardo é simples e geralmente eficaz, mas não afetará Shape s em grupos. Um código mais genérico usa recursão para lidar com esse caso também (ligeiramente alterado de aqui , que está no mesmo thread que o código de Leonardo):

Private Function ChangeLangOfAllText_caller()
    'ChangeLangOfAllText (msoLanguageIDEnglishUS)
    ChangeLangOfAllText (msoLanguageIDSpanishArgentina)
End Function

Private Function ChangeLangOfAllText(ByVal LangID As Long)
    Dim MySlide As Slide
    Dim MyShape As Shape
    Dim MyD As Design
    Dim MyHeaderFooter As HeaderFooter
    Dim i, nbs As Integer
    ''''' First deal with the master slides
    For Each MyD In ActivePresentation.Designs
        For Each MyShape In MyD.SlideMaster.Shapes
            ProcessShapes MyShape, LangID
        Next MyShape
    Next MyD
    ''''' Now deal with the slides
    ' Enable this for debugging
    'Debug.Print "File " & ActivePresentation.Name & _
      ": working with " & ActivePresentation.Slides.Count & " slides"
    For Each MySlide In ActivePresentation.Slides
        ' Enable this for debugging
        'Debug.Print " Slide index " & MySlide.SlideIndex & ", Slide number " & MySlide.SlideNumber & _
          ": working with " & MySlide.Shapes.Count & " shapes"
        For Each MyShape In MySlide.Shapes
            ProcessShapes MyShape, LangID
        Next MyShape
        ''''' Now deal with the Notes
        For Each MyShape In MySlide.NotesPage.Shapes
            ProcessShapes MyShape, LangID
        Next MyShape
        ''''' Now deal with the master ' doesn't appear to work, have to try something else
        For Each MyShape In MySlide.Master.Shapes
            ProcessShapes MyShape, LangID
        Next MyShape
    Next MySlide
End Function

Private Function ProcessShapes(MyShape As Shape, ByVal LangID As Long)
    Dim i As Integer
    If ((MyShape.Type = msoGroup) Or (MyShape.Type = msoTable)) Then
        On Error Resume Next
        For i = 1 To MyShape.GroupItems.Count
            ''' The trick is to recurse!
            ProcessShapes MyShape.GroupItems.Item(i), LangID
        Next i
    Else
        ChangeLang MyShape, LangID
    End If
End Function

Private Function ChangeLang(MyShape As Shape, ByVal LangID As Long)
    Dim i As Integer
    If (MyShape.HasTextFrame) Then
        ' Enable this for debugging
        'Debug.Print " Shape " & MyShape.ZOrderPosition & ", type: " & MyShape.Type & _
          ", has text frame: " & MyShape.HasTextFrame & ", has text: " & MyShape.TextFrame.HasText & _
          ", alt. text: " & MyShape.AlternativeText
        MyShape.TextFrame.TextRange.LanguageID = LangID
    End If
End Function
    
por 31.08.2016 / 08:49