¿Cómo cambio el idioma de todas las diapositivas de PowerPoint a la vez?


152

Aunque este hilo es bastante antiguo, Microsoft no ha proporcionado ninguna solución que yo sepa. Sugiero otro enfoque para los usuarios de Mac: abra su presentación en Keynote, cambie el lenguaje ortográfico y posiblemente edite toda su presentación, luego expórtela a PowerPoint.



1
Parece que la última versión de PowerPoint es especialmente defectuosa a este respecto. Tengo un cuadro de texto donde he cambiado el idioma de todo el texto al idioma A. (El idioma predeterminado es B.) Entonces, cuando empiezo a escribir dentro de ese cuadro de texto, el idioma cambia automáticamente a B. Pensé que tal vez cambiaría el predeterminado el lenguaje ayuda (habiendo intentado todo lo demás) pero no. Ahora el idioma predeterminado es A, el idioma de todos los demás textos en el cuadro de texto es A (y he reiniciado PP) pero todo el texto nuevo sigue apareciendo como B. Así que mi única pregunta restante es: ¿hay alguna manera de cambiar la corrección? fuera por completo?
lebatsnok

Sí, hay una forma de desactivar el corrector ortográfico: support.microsoft.com/en-us/help/937422/… - ¡resolvió mi problema!
lebatsnok

Respuestas:


166

Para cambiar fácilmente el idioma de todo el PowerPoint, abra la pestaña Ver y seleccione la vista Esquema .

Ahora presiona

  • Ctrl+ Apara seleccionar todo.
  • HerramientasIdioma → Elija su idioma para configurar.

Del mismo modo, mientras tiene todo seleccionado, puede cambiar otras cosas, como fuentes, colores, etc. Aunque, por supuesto, en muchos casos esto se hace mejor cambiando el patrón de diapositivas, una presentación que ha tenido muchos editores puede tener muchos conjuntos de formatos 'duros' que se desvía del maestro subyacente y necesita restablecerse para ser coherente. También puede restablecer diapositivas individuales al estilo maestro, pero esto puede provocar que los marcadores de posición también se muevan, lo que puede ser indeseable en algunas situaciones.

PowerPoint 2013

  • VerEsquema → seleccionar todas las diapositivas (en un menú de la izquierda) mediante Ctrl+ A.
  • RevisarIdiomaEstablecer idioma de corrección ... → Elija su idioma para configurar.

En cuanto a mí, se necesitaba reiniciar PowerPoint . Probablemente porque también cambié el Idioma de edición :

  • RevisarIdiomaEstablecer idioma de corrección ...Preferencias de idiomaElegir idiomas de edición .

31
Gracias por responder, pero después de cambiar el idioma, el texto recién escrito todavía está en el idioma anterior (el predeterminado). Además, si va a las diapositivas maestras, seleccione la diapositiva , notará que el idioma en la barra de idioma sigue siendo el predeterminado, y el menú para cambiarlo está atenuado. Me estoy volviendo loco porque Microsoft no lo ha resuelto en tantos años.
Endrju

1
¡Increíble! Si bien no es perfecto, sin duda ayuda. Estoy de acuerdo con @Endrju, ¿por qué aún no se ha solucionado?
Mike

1
Para el registro, en Office 2013, el menú Idioma está en el panel Revisar (Establecer idioma de prueba)
Maria Ines Parnisari

2
Powerpoint es sorprendentemente malo, ¿no? Realmente extraño usar la oficina abierta cuando tengo problemas como este. Regresaré a la oficina abierta tan pronto como admitan guardar en un video.
mjaggard

2
La principal limitación de esto es que si alguien en su sabiduría infinita creó un cuadro de texto personalizado en lugar de usar diseños de Título + Contenido adecuados, esto simplemente no funcionará.
Lilienthal

34

Usando Powerpoint 2010 abrí el menú Esquema -

pestaña de esquema

Seleccioné todo el texto (Ctrl + A), abrí el menú de idioma y configuré mi idioma de prueba

opción de idioma

¡Y funcionó!

El menú de idioma se encuentra en la pestaña Revisar cinta (después de la pestaña Presentación de diapositivas y no está visible en la captura de pantalla).


44
Solo funciona para una sola diapositiva
Helge Klein

99
Esto funciona para diseños básicos de diapositivas. No cambiará el idioma del texto dentro de los cuadros de texto o anidado dentro de otras formas.
Duncan Jones

Funciona en Office 2007 también.
Alfredo Osorio

Trabajó en Office Mac también.
Jim McKeeth el

23

Las respuestas existentes funcionan para el texto que está presente en el esquema. Desafortunadamente, en mi caso, esto no cubrió una parte significativa del texto, incluidas figuras, tablas, etc.

Esta macro resolvió el problema para mí:

 Sub ChangeProofingLanguageToEnglish()
    Dim j, k, m, scount, fcount, gcount 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
            If ActivePresentation.Slides(j).Shapes(k).Type = msoGroup Then
                gcount = ActivePresentation.Slides(j).Shapes(k).GroupItems.Count
                For m = 1 To gcount
                    If ActivePresentation.Slides(j).Shapes(k).GroupItems.Item(m).HasTextFrame Then
                    ActivePresentation.Slides(j).Shapes(k).GroupItems.Item(m) _
                    .TextFrame.TextRange.LanguageID = msoLanguageIDEnglishUS
            End If
                Next m
            End If
        Next k
    Next j
End Sub

El "msoLanguageIDEnglishUS" que se usa en la macro anterior se puede reemplazar por cualquier idioma deseado. La lista completa de idiomas se puede encontrar en este artículo

(El crédito es para Ganesh Kumar, quien publicó la macro original aquí . Agregué soporte para el primer nivel de agrupación de formas. Para mejorarlo aún más, la macro puede hacerse recursiva para buscar grupos que contengan otros grupos, etc.)


+1 Buen comienzo. Vea mi respuesta para una versión totalmente recursiva basada en esta respuesta.
Duncan Jones el

20

Creo que he mejorado en la respuesta de Iñigo para proporcionar una versión recursiva que cambia todos los artículos al idioma deseado.

Esta versión investigará de forma recursiva cada forma que sea un tipo de grupo. Algunos experimentos sugieren eso msoGroupy msoSmartArtson los tipos de grupo: siéntase libre de agregar a esa lista si encuentra otros tipos de formas que pueden contener objetos de texto.

Sub ChangeProofingLanguageToEnglish()
    Dim j As Long, k As Long
    Dim languageID As MsoLanguageID

    'Set this to your preferred language
    languageID = msoLanguageIDEnglishUK

    For j = 1 To ActivePresentation.Slides.Count
        For k = 1 To ActivePresentation.Slides(j).Shapes.Count
            ChangeAllSubShapes ActivePresentation.Slides(j).Shapes(k), _
              languageID
        Next k
    Next j
End Sub


Sub ChangeAllSubShapes(targetShape As shape, languageID As MsoLanguageID)
    Dim i As Long

    If targetShape.HasTextFrame Then
        targetShape.TextFrame.TextRange.languageID = languageID
    End If

    Select Case targetShape.Type
        Case msoGroup, msoSmartArt
            For i = 1 To targetShape.GroupItems.Count
                ChangeAllSubShapes targetShape.GroupItems.Item(i), languageID
            Next i
    End Select
End Sub

1
Al ejecutar esto en PowerPoint 16.10 en OSX, obtengo:Compile error: Method or data member not found
Etienne Low-Décarie

10

Basado en las respuestas de Inigo, Duncan, Maria y DomDev, esto funciona para formas, tablas, grupos, SmartArt, ahora y en el futuro:

Sub ChangeProofingLanguageToFrench()
    Dim j, k As Integer
    Dim languageID As MsoLanguageID

    'Set this to your preferred language
    languageID = msoLanguageIDFrench

    'Loop all the slides in the document, and change the language
    For j = 1 To ActivePresentation.Slides.Count
        For k = 1 To ActivePresentation.Slides(j).Shapes.Count
            ChangeAllSubShapes ActivePresentation.Slides(j).Shapes(k), languageID
        Next k
    Next j

    'Loop all the master slides, and change the language
    For j = 1 To ActivePresentation.SlideMaster.CustomLayouts.Count
        For k = 1 To ActivePresentation.SlideMaster.CustomLayouts(j).Shapes.Count
            ChangeAllSubShapes ActivePresentation.SlideMaster.CustomLayouts(j).Shapes(k), languageID
        Next k
    Next j

    'Change the default presentation language, so that all new slides respect the new language
    ActivePresentation.DefaultLanguageID = languageID
End Sub

Sub ChangeAllSubShapes(targetShape As Shape, languageID As MsoLanguageID)
    Dim i As Integer, r As Integer, c As Integer

    If targetShape.HasTextFrame Then
        targetShape.TextFrame.TextRange.languageID = languageID
    End If

    If targetShape.HasTable Then
        For r = 1 To targetShape.Table.Rows.Count
            For c = 1 To targetShape.Table.Columns.Count
                targetShape.Table.Cell(r, c).Shape.TextFrame.TextRange.languageID = languageID
            Next
        Next
    End If

    Select Case targetShape.Type
        Case msoGroup, msoSmartArt
            For i = 1 To targetShape.GroupItems.Count
                ChangeAllSubShapes targetShape.GroupItems.Item(i), languageID
            Next i
    End Select
End Sub

En cuanto a otras soluciones, sobre cuando se ejecuta este en PowerPoint 16.10 en OSX, me sale: Compile error: Method or data member not found. ¿Alguna solución sugerida? Parece resaltar .DefaultLanguageID.
Etienne Low-Décarie

@ EtienneLow-Décarie: la API podría haber cambiado en PowerPoint 16; No lo tengo, así que no puedo comprobarlo, lo siento.
tricasse

Funciona para mí en Powerpoint 2016 en Windows 7 (la versión exacta de MS Office es 16.0.11029.20108)
Christopher K.

¡Perfecto! La única mejora que se me ocurre es cambiar el idioma de las secciones de notas de diapositivas también :)
Marcus Mangelsdorf

7

La versión de Duncan funciona bien para todo menos para tablas. Encontré otro código que parece funcionar también con tablas: https://stackoverflow.com/questions/4735765/powerpoint-2007-set-language-on-tables-charts-etc-that-contains-text

Public Sub changeLanguage()
    On Error Resume Next
    Dim gi As GroupShapes '<-this was added. used below
    'lang = "English"
    lang = "Norwegian"
    'Determine language selected
    If lang = "English" Then
        lang = msoLanguageIDEnglishUK
    ElseIf lang = "Norwegian" Then
        lang = msoLanguageIDNorwegianBokmol
    End If
    'Set default language in application
    ActivePresentation.DefaultLanguageID = lang

    'Set language in each textbox in each slide
    For Each oSlide In ActivePresentation.Slides
        Dim oShape As Shape
        For Each oShape In oSlide.Shapes
            'Check first if it is a table
            If oShape.HasTable Then
                For r = 1 To oShape.Table.Rows.Count
                    For c = 1 To oShape.Table.Columns.Count
                    oShape.Table.Cell(r, c).Shape.TextFrame.TextRange.LanguageID = lang
                    Next
                Next
            Else
                Set gi = oShape.GroupItems
                'Check if it is a group of shapes
                If Not gi Is Nothing Then
                    If oShape.GroupItems.Count > 0 Then
                        For i = 0 To oShape.GroupItems.Count - 1
                            oShape.GroupItems(i).TextFrame.TextRange.LanguageID = lang
                        Next
                    End If
                'it's none of the above, it's just a simple shape, change the language ID
                Else
                    oShape.TextFrame.TextRange.LanguageID = lang
                End If
            End If
        Next
    Next End Sub

5

Además de la respuesta proporcionada por Mastergalen y para abordar los comentarios sobre el nuevo texto escrito:

Si observa que el idioma cambiará automáticamente cada vez que comience a escribir texto nuevo (lo cual es muy molesto), debe cambiar el idioma predeterminado actual para PowerPoint:

  • asegúrese de que la ventana de PowerPoint sea una ventana activa
  • en el Windows Taskbar(sí, en realidad no en PowerPoint), verifique si Language barestá visible,
    • Si no va a Control Panel > Region and Language > Keyboards and Languages. Haga clic Change keybords..., cambie a la Language barpestaña y marque la Docked in the taskbaropción. (Esto es de Win7, por lo que podría ser un poco diferente en otras versiones).
  • ahora acción clave: en la Language barbarra de tareas, haga clic en el código de idioma y cambie a EN (si actualmente quiere usar inglés en PowerPoint). De ahora en adelante, todo el texto nuevo en PowerPoint estará en el idioma seleccionado :-)
  • si desea escribir en su idioma original, simplemente cámbielo de nuevo.

1
Oh Dios, ¿por qué harían algo así? Gracias, funcionó perfectamente.
Thibault D.

1
¡Exactamente! debe agregarse a la respuesta aceptada también.
M. Abdelhafid

1
Pero eso también cambia la distribución del teclado, ¿no? ... Quiero escribir texto en inglés pero realmente quiero mantener la distribución del teclado en alemán ...
Johannes S.

2
@JohannesS. Si hace clic Encon el botón derecho en la barra de tareas y selecciona Settings.., verá en los idiomas instalados alemán (DE) e inglés (En), si expande inglés, aparecerá en la Keyboardslista, expanda teclados y agregue su teclado alemán preferido, probablemente elimine uno en inglés además. No lo intenté, pero debería funcionar en teoría ;-)
Gas

Espera, ¿entonces necesito cambiar el idioma de mi teclado si quiero tener un idioma de prueba diferente? Eso es estúpido.
Matěj Račinský

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.