Faire parler Excel

excel-faites-parler 1Bonjour à tous,

Si vous voulez faire parler Excel, notamment dans des boites de dialogue, ou bien encore pour valider l'entrée de données, voici un exemple (merci à Raphaël pour cette suggestion) :

Télécharger l'exemple

Tout d'abord, il faut vous assurer que la reconnaissance vocale est bien installée, pour cela, aller dans le panneau de configuration :
panneau-de-configuration-reconnaissance-vocale

Il ne reste plus qu'à utiliser cette fonction dans votre code VBA. Ici, j'ai ajouté un formulaire, un textbox sur le formulaire, et j'ai ensuite ajouté le code en double-cliquant sur le textbox du formulaire.
Private Sub TextBox_Montant_Change()
Application.Speech.Speak Me.TextBox_Montant, True, , True
Range("Montant_Saisi").Value = Me.TextBox_Montant.Value
End Sub

Voici une petite vidéo qui explique comment on peut l'intégrer pour valider des saisies de données.

Voici les différentes options du code (avec la traduction automatique désastreuse de Microsoft).
Dans le fichier joint, j'ai utilisé la première option (True) pour éviter d'avoir un temps d'attente avant de saisir le prochain chiffre et la dernière (True) pour éviter de devoir attendre la fin de l'énonciation du texte avant de passer au texte suivant.

Avec un petit résumé :
parametre-speech 1

Voici le lien vers microsoft pour plus d'informations sur cette fonctionnalité :
https://msdn.microsoft.com/fr-fr/fr/library/office/ff839393.aspx

A bientôt.

Gaëtan

Un peu de philosophie, retour d'expérience sur quelques projets récents

Bonjour à tous, J'ai récemment finalisé une petite série de projets (retraitement de fichiers texte, récupération et compréhension d'une base de gestion d'un atelier textile, etc.).

Je voudrais partager certaines "règles" de bon sens pour ces projets. Celles-ci viennent compléter ou repréciser celles que j'avais émises ici et .

  • Ne jamais utiliser une formule =LIGNE() pour créer une clef dans une table de données. En effet, à la moindre suppression de ligne ou bien lors d'un tri, vous perdrez la correspondance de cette clef, surtout si elle a été utilisé ailleurs ou comme lien.
  • Ne jamais utiliser plusieurs formules de structures différentes dans une même colonne.
    • Tout d'abord, suivant la loi de Murphy, un utilisateur va forcément recopier la formule sur toute la colonne et flinguer les autres formules.
    • De plus, lors de l'ajout de nouvelles lignes, vous allez devoir choisir quelle formule utiliser, ce qui entraine un risque d'erreur encore plus important.
    • La solution consiste donc à repenser la structure des tables pour éviter ces situations. On peut aussi - jusque dans une certaine mesure - complexifier les formules pour prendre en compte les différents cas.
  • Lorsqu'on crée une colonne avec des dates, ne rien mettre d'autre que des dates, cela permet de créer très rapidement d'excellents tableaux croisés dynamiques.
  • Archiver régulièrement ses fichiers.
  • Éviter au maximum les liaisons entre fichiers. Mon expérience est que cela génère toujours des problèmes : pas d'actualisation, cassage des liens, transfert de fichiers, complexité des structures, etc.
  • Toujours bien réfléchir avant de choisir Excel pour s'assurer que c'est l'outil le plus adéquat... nombre d'utilisateurs simultanés, taille et complexité de la base, communication des données à l'extérieur, etc.
    Souvent Excel n'est pas l'outil idéal, mais il reste un très bon outil de prototypage avant de migrer vers une solution plus "classique" de type base de données relationnelles (Access, Oracle, etc.) ou progiciel.

En espérant que ces petits conseils vous soient utiles.

A bientôt.

Gaëtan Mourmant