Why does Application.Speech.Speak read some numbers individually rather than put them together?

后端 未结 3 986
日久生厌
日久生厌 2021-01-13 17:24

Let\'s suppose now it is 11h11min. It reads \"ONE ONE\" hours and \"eleven\" minutes, as in:

Sub TEST1() 
  Application.Speech.Speak \"It is \" & Hour(No         


        
3条回答
  •  萌比男神i
    2021-01-13 18:05

    The Portuguese language has some interesting pronunciation challenges. We have, among other, the nasal "-ão" termination for words as in São Paulo. The -ão is pronounced almost like the -ow in "sow" and it means that while you pronounce the vowels, the air should come out partly from your nose. That being said ...

    Application.Speech.Speak "Já são" & Hour(Now()) & "horas e 11 minutos" --> reads "It is ONE ONE hours and ELEVEN minutes"

    Application.Speech.Speak "11" --> reads "ELEVEN"

    Application.Speech.Speak "Já são" & "11" & "horas" --> reads "It is ONE ONE hours"

    Application.Speech.Speak "Já sao" & Hour(Now()) --> reads "It is ELEVEN hours". Notice that the nasal -"ão" was removed in this case. So, the number pronunciation is in words

    Application.Speech.Speak "Já são^" & Hour(Now()) --> reads "It is ELEVEN hours". Notice that the nasal -"ão" is now present and also there is a "^" sign positioned just afterwards

    I don´t know why Excel behaves like that. But, problem solved :)

提交回复
热议问题