Ich bin immer wieder mit dem nervigen Problem konfrontiert gewesen, meine Folien abwechselnd in deutsch und in englisch erstellen zu müssen. Das an sich ist noch kein echtes Problem und auch die Tatsache, das ich selbstverständlich auch massiv dem Folienrecycling fröne, stellt noch keins dar (zur Not muss halt nur die eine oder andere Folie nochmal übersetzt werden).
Nervig wird bei Verwendung von Powerpoint dann, wenn man mal schnell ne Hand voll Folien aus einer englischen Präsentation in eine deutsche einfügt oder vice versa, denn spätestens bei der Übersetzung selbiger fängt PowerPoint an, die Folie rot einzufärben, da die englische Sprache nur bedingt mit der deutschen Rechtschreibprüfung zusammenarbeitet.
Dummerweise kennt PowerPoint nicht das Konzept einer globalen Spracheinstellung für alle Folien, die sich mit einem Klick ändern lässt. Stattdessen empfehlen die Entwickler (und viele “Powernutzer” in einschlägigen Webforen), dass man alle Textboxen in allen Folien nacheinander durchklickt und bei jeder explizit die Sprache im Menü ändert.
Nach mittellanger Suche bin ich auf diese Diskussion gestoßen, deren durchaus interessante Lösungswege bei mir aber leider nicht funktionierten.
Eine weitere Suche über Google Groups brachte mich schließlich zu dieser Diskussion, in deren Verlauf ein Makro veröffentlicht wurde, dass genau den oben beschriebenen, manuellen Weg automatisiert: iteriere über alle Textboxen auf allen Folien und setze die Sprache auf <unsäglicher Konstantenname für Sprache>.
Hier die abgewandelte Version für Deutsch:
Sub Sprachenwechsel()
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 = msoLanguageIDGerman
End If
Next k
Next j
End Sub