L'informatique pour les littéraires

Faire parler Excel et Powerpoint

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