Clase Speech - la síntesis de voz (Excel VBA)
Contiene los métodos y las propiedades que se aplican a la síntesis de voz. Para usar una variable de clase Speech, primero debe ser instanciado, por ejemplo
Dim spc as Speech
Set spc = Application.Speech
Direction
Devuelve o establece el orden en que se dirán las celdas. El valor de la propiedad Direction es una constante XlSpeakDirection . Lectura y escritura. Posibles valores de retorno son xlSpeakByColumns - Lee una columna hacia abajo y luego pasa a la columna siguiente, xlSpeakByRows - Lee una fila en horizontal y luego pasa a la fila siguiente.
Application.Speech.Direction = xlSpeakByColumns
Speak
Microsoft Excel reproduce la cadena de texto que se ha pasado como argumento.
Speak (Text, SpeakAsync, SpeakXML, Purge)
Dim strText As String: strText = "Hello"
Application.Speech.Speak Text:=strText
Arguments
Un argumento con nombre
Text (String) - Texto que se va a decir.
Optional arguments
Los siguientes argumentos son opcionales
SpeakAsync - True hace que el texto se diga de forma asíncrona (el método no esperará a que se diga el texto). False hace que el texto se diga de forma sincrónica (el método espera a que se diga el texto antes de continuar). El valor predeterminado es False
SpeakXML - True hace que el texto se interprete como XML. False hace que el texto no se interprete como XML, por lo que las etiquetas XML se leen y no se interpretan. El valor predeterminado es False
Purge (Boolean) - True hace que se termine la voz actual y que se purgue cualquier texto almacenado en búfer antes de que se diga el texto. False no hace que la voz actual se termine y no purga el texto almacenado en búfer antes de que se diga el texto. El valor predeterminado es False.
SpeakCellOnEnter
Microsoft Excel admite un modo en el que se pronuncia la celda activa cuando se presiona la tecla entrar o cuando termina de editarse la celda activa. Al establecer la propiedad SpeakCellOnEnter en true se activa este modo. False desactiva este modo. Boolean de lectura y escritura.
Application.Speech.SpeakCellOnEnter = True