Lire une TexBox avec Application.Speech.Speak

Bonjour,

Pouvez-vous m'aider?

J'aimerais avoir une texbox où je pourrais faire lire un texte avec Application.Speech.Speak

Ce texte ce trouverait dans une feuille Excel ou un fichier (Word ou Excel ou bloc-notes) sur le disque dur.

Comment faire ?

merci

Bonjour

A quel moment doit être lu le texte ? Lors de l'entrée dans le contrôle, lors de la sortie...?

@ bientôt

LouReeD

Bonjour,

un clic sur un bouton 'Lecture'

désolé, j'ai oublié

merci

@ bientôt

Une textbox avec un bouton lecture qui "lit" un texte sur le disque dur, à quoi sert la textbox ?

@ bientôt

LouReeD

bonjour à tous,

une proposition. Introduire le texte à faire lire dans la textbox

63speaktest.xlsm (14.92 Ko)

Bonjour et merci pour vos réponses rapides

Une textbox avec un bouton lecture sui "lit" un texte sur le disque dur, à quoi sert la textbox ?

Pour visualiser le texte.

exemple:

- En cliquant sur un menu déroulant où apparait plusieurs titres (là, je n'ai pas encore les codes)

- on clic sur le titre choisi

le texte apparaît dans une textbox ou autre

-clic sur 'lecture'

Merci H2So4, je vais essayer

@bientôt

Merci H2So4,
Pour ton exemple il faut saisir le texte, puis cliquer--> ok ça marche

mais j'aimerais, si possible, insérer un texte qui se trouve dans une feuille nommée: "Texte1" par exemple
et sur disque dur dans un fichier word ou bloc-notes

au cas où mon fichier serait trop important à insérer dans une feuille Excel)

@bientôt

re-Bonjour,

Voici une nouvelle version. sélectionner la ou les cellules contenant le texte et cliquer sur go

67speaktest.xlsm (15.81 Ko)

Bonsoir,

Merci c'est pas mal ça!

Comment faire pour y ajouter un bouton (lecture et arrêt) ?

car là, je peux lire le texte mais je ne sais pas comment l'arrêter?

merci de votre aide

@bientôt

Hello !

C'est super ça !

Avec en plus un super accent français pour qu'on se sente bon en prononciation après avoir entendu ça

bonsoir h2so4,

j'ai pu faire ceci avec ton code

Sub aargh()

 On Error GoTo fin ' Echap----pour arrêter

Dim pays As String
 pays = Sheets("texte").Cells(1, 1)
   If pays = "ITALIEN" Then Call SayThisStringIT
         If pays = "ANGLAIS" Then Call SayThisStringGB
            If pays = "français" Then Call SayThisStringFR
               If pays = "ESPAGNOL" Then Call SayThisStringES
                    If pays = "ALLEMAND" Then Call SayThisStringDE

  Range("A2:A10").Select ' cette ligne car avec Derligne ça ne fonctionne pas
    For Each cel In Selection
        If cel <> "" Then Application.Speech.Speak cel
    Next

fin:
    If Err.Number <> 0 Then MsgBox "Erreur " & Err.Number & vbLf & Err.Description & Chr(10) & Chr(10) & " VOUS AVEZ ARRETE LA LECTURE"

End Sub

plus qu'à ajouter une liste déroulante pour faire défiler les titres ici "texte"....> si vous savez?

Par contre comment faire pour incorporer un texte dans une textbox ? Je n'y arrive pas

Merci

Bonsoir,

avez vous votre fichier avec le USF ?

@ bientôt

LouReeD

Bonsoir,

Oui, pourquoi ?

mais j'avais laissé tombé ce fichier parce qu'il planté de temps en temps. Je ne pouvais plus retourner dans Excel quand j'ouvrais VisualBasic.

Et aussi caractères trop petits pour mes petits yeux

(voir mes messages dans QCM en USF du 15/02)

Merci

@bientôt

Bonsoir,

j'ai essayé d'ajouter la sélection de voix mais je n'y suis pas arrivé. Sinon la derligne fonctionne, j'ai mis les données de la colonne dans une variable tableau.

28choix-langues.xlsm (19.07 Ko)

@ bientôt

LouReeD

Bonsoir,

Pour les voix:

j'ai téléchargé espeakedit-1.48.03.exe (pour récupérer le nom de la voix ou l'adresse 🤔 )

puis dans narrateur (Crl+win+N)--> 'ajouter d'autres voix' -->'ajouter des voix'--> choisir la langue--> ajouter (c'est très long)

Et si ça ne fonctionne pas faut ajouter les petits modules que j'ai ajouter dans "VOIX"...

Merci

Vais essayer vos codes

bonne soirée

@bientôt

Bonjour,

Après vérification, je crois qu' on a pas besoin espeakedit-1.48.03.exe

1- ajouter d'autres voix --> dans Narrateur (CTRL+WIN+N)

2-ajouter des voix

3-package vocaux (choisir la langue)

4-cliquer sur ajouter

ouvrir (en ligne) juste au-dessus= copier le Prénom correspondant à la langue ajoutée (ici j'ai choisi Portugal, donc je récupère "Helia"

Pour les autres pays je change juste le prénom et les 2 lettres du pays

ajouter ces lignes

Public Sub Speak(StrTexte As String)
Static Voice As Object
    If Voice Is Nothing Then Set Voice = CreateObject("SAPI.Spvoice")
        Voice.Speak StrTexte
    If StrTexte = "" Then Set Voice = Nothing
 End Sub

 Sub SayThisStringPT() ' Portugal
        Dim SayThis As String
         CreateObject("SAPI.SpVoice").Voice.Category.Default = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_Pt-Pt_Helia_11.0"
           Call Speak("FALSO, a resposta correta é: ")' cette ligne pour écouter la voix, après on l'enlève
 End Sub

@bientôt

et un grand merci

Bonjour,

pour la liste déroulante je ne sais absolument pas comment vous faites? j'ai trouvé (validation des données-->liste) ouf

pour le dim je n'arrive pas à comprendre ce que représente le I

Dim pays As String, Tablo(), I, Temp As String

Vous m'avez donné un casse-tête

pour les voix il faut absolument un 'call' pour lire sinon il reste sur le dernier lu

merci

@bientôt

Bonjour,

je n'arrive pas à ouvrir la feuille correspondante au pays sélectionné

Sub LRD()
    Dim pays As String, Tablo(), I, Temp As String
        pays = Range("A1")

    Worksheets(pays).Activate' ----> Erreur ---
'-- >comment faire pour ouvrir la feuille 'pays'sélectionné? 

    Tablo = Range("C1:C" & Range("C" & Rows.Count).End(xlUp).Row)
  If pays = "ITALIEN" Then Call SayThisStringIT
        If pays = "ANGLAIS" Then Call SayThisStringGB
            If pays = "FRANCAIS" Then Call SayThisStringFR
              If pays = "ESPAGNOL" Then Call SayThisStringES
                    If pays = "ALLEMAND" Then Call SayThisStringDE
                        If pays = "PORTUGAL" Then Call SayThisStringPT
 For I = 1 To UBound(Tablo)
           If Tablo(I, 1) <> "" Then Temp = Tablo(I, 1): Application.Speech.Speak Temp
        Sheets("choix").Activate
     Next
  End Sub

merci

@ bientôt

Bonsoir,

en ajoutant les lignes de code :
pays = Range("A1")
Worksheets(pays).Activate

je n'ai pas d'erreur chez moi après avoir créer les dites feuille
Vérifier l'orthographe des noms des onglets et du code VBA.

@ bientôt

LouReeD

Bonjour,

Effectivement une faute d'orthographe

merci

Vous avez pu installer les voix?

Sans les voix, on ne peut pas apprécier mes efforts

Je n'ai toujours pas trouvé comment insérer un texte d'une feuille excel dans une TextBox.... et pourtant je cherche

@ bientôt

Rechercher des sujets similaires à "lire texbox application speech speak"