Voici deux macros visual Basic qui permettent de faire lire un texte à Office.
Le premier peut parfaitement être ajouté à une slide powerpoint: on peut lui passer le texte d’une forme. Cela ouvre en arrière plan l’appli Excel qui contient l’outil de parole.
Sub parler()
Dim e
Set e = CreateObject("Excel.Application")
e.speech.Speak "Pour nommer vos écrans, il vaut mieux utiliser des noms"
End Sub
Le second utilise l’api de speech de Office et peut être joué dans n’importe quel programme office.
Sub parler2()
'source: https://stackoverflow.com/questions/20498004/how-to-save-sapi-text-to-speech-to-an-audio-file-in-vbscript
Const SAFT48kHz16BitStereo = 39
Const SSFMCreateForWrite = 3 ' Creates file even if file exists and so destroys or overwrites the existing file
Dim oFileStream, oVoice
Set oFileStream = CreateObject("SAPI.SpFileStream")
oFileStream.Format.Type = SAFT48kHz16BitStereo
oFileStream.Open "C:\Users\Fra\Music\Sample.wav", SSFMCreateForWrite
Set oVoice = CreateObject("SAPI.SpVoice")
Set oVoice.AudioOutputStream = oFileStream
oVoice.Speak "Pour nommer vos écrans, il vaut mieux utiliser des noms"
oFileStream.Close
End Sub