Projet complexe. Faisable pour un néophyte?

19paulmi-1.xlsm (136.47 Ko)

Bonjour,

Enseignant en école primaire, je souhaiterais développer un fichier Excel dont voici le principe.

Voici mon plan de travail :

Je créé tout d'abord une base de données de mots. Pour chacun de ces mots, je renseigne les sons qu'il contient grâce à des cases à cocher. (exemple, pour le mot "route", les cases cochées seront "son r", "son ou", et "son t".

Ensuite, l'utilisateur coche les sons qu'il a déjà étudiés avec ses élèves, afin d'obtenir une liste de mots ne contenant que les sons qu'il a déjà étudié.

Exemple: l'utilisateur veut une liste de mots contenant les sons "r, "b", "a", "i" "p" "ou". Il coche ces 6 sons, et Excel va piocher dans la base de données et lui renvoie une liste de mots contenant tous ces sons.

Je suis (entièrement) novice en matière de programmation. Avant de me lancer dans ce projet, je voudrais donc vous soumettre quelques questions afin de pouvoir commencer.

1) Excel est-il le choix le plus approprié pour ce genre de projet? En voyez vous d'autre?

2) L'utilisateur final doit-il avoir Excel pour faire fonctionner ce programme?

3) Je pensais créer deux feuilles: Première feuille dans laquelle sont stockés les mots avec tous les sons, deuxième feuille pour l'utilisateur. (cf début d'ébauche dans le fichier excel joint). Est-ce la bonne solution? (la première feuille serait verrouillée ou masquée pour l'utilisateur)

4) Et surtout, y aura t-il besoin de "mettre les mains dans le cambouis" et de programmer des formules compliquées ? Pour dire autrement, cela vous parait-il très compliqué à mettre en œuvre sans des bases solides en programmation, ou bien ce projet vous semble-il possible pour un néophyte comme moi?

Cordialement

Bonjour,

Oui et non. Par formule ça risque d'être très rapidement une usine à gaz, reste le VBA qui n'est pas le plus simple pour débuter.

Je te propose une autre approche sur la base d'un fichier fait pour une orthophoniste : il fallait mettre en couleur les sons.

J'ai ajouté la possibilité de cocher quand un son est trouvé.

Plus besoin d'une multitude de case à cocher (rend excel très instable), le programme recherche les sons définis dans les mots.

Dans Liste!A tu définis les sons à rechercher. Tu n'es pas obligé d'utiliser B qui sert à la mise en couleur.

En D tu coches les sons que tu veux pouvoir filtrer dans Phrases. On peut imaginer que dans les colonnes suivantes tu mettes des présélections que tu n'auras plus qu'à copier-coller en D.

Dans Phrases!A tu sélectionnes la liste de mots à traiter et tu cliques sur le bouton Colorer.

Il y aura des adaptations à faire...

Par exemple un son déjà coloré n'est plus analysé, il ne fallait pas écraser une exception faite manuellement. Si tu veux recocher, remettre toute la colonne Phrases!A en texte couleur 'Automatique'.

Et aussi de ne pas cocher "o" dans la liste des mots si il est dans "on" ou "om", actuellement ce n'est pas le cas.

Mais regarde si ça peut te servir de base de départ, j'ai adapté au minimum que tu te rendes compte.

Alt+F11 pour voir le code dans Module1

eric

18colorerson.zip (11.02 Ko)

Bonsoir,

A mon avis c'est faisable avec Excel pour autant que les volumes soient raisonnables càd une base de données de 10.000 à 20.000 mots ne devrait pas effrayer Excel et il faut également savoir combien de sons différents il faut envisager.

Peux-tu préciser à quoi tu penses en terme de volume ?

D'autre part as tu déjà constituer ta base de données avec les qualifications des sons ? Si oui envoie là et je te ferai un projet.

Sinon précises les volumes et surtout les sons envisagés.

Si les volumes devaient vraiment être très importants, il resterait la solution Access mais cette application est plus difficile à appréhender qu'Excel.

L'utilisation d'Excel est relativement simple pour l'utilisateur Lambda si les tableaux sont bien préparés (par quelqu'un qui s'y connait)

Il faut naturellement que tous les utilisateurs possèdent le logiciel Excel et il y a moyen de protéger l'application pour éviter les bêtises.

Voilà je pense avoir répondu à toutes tes questions.

Si cela t'intéresse, fait moi parvenir les renseignements.

A+

Chris

Bonsoir, et merci pour vos réponses.

@ eric, l'idée est intéressante mais plus "complexe" que le projet que je veux développer. Mais cela m'a donné des idées, merci.

@chris : Je pensais faire un corpus d'environ 500 à 1000 mots. Concernant les sons, il y 'en a une trentaine. J'ai joint un fichier excel où ils sont répertoriés.

Dans mon idée, sur la première feuille, je remplis pour chaque mot les caractéristiques phonétiques en cochant parmi les 30 sons. (feuille vérouillée). Sur la deuxième feuille, l'utilisateur coche parmi les 30 sons ceux qui l’intéressent et Excel lui retourne tous les mots qui remplissent tous les critères.

Pour les cases à cocher, j'ai mis des cases types "activex", mais je ne sais pas s'il faut plutôt mettre la case à cocher "contrôle de formulaire".

Ensuite, si j'ai bien compris, il faut rattacher cette case à une cellule qui contiendra "vrai" ou "faux" selon si la case est cochée ou non.

Enfin, pour l'utilisateur, Excel lui renverra tous les mots qui contiennent "vrai" dans toutes les cases associés aux sons qu'il a cochés. (je ne sais pas si je suis très clair...)

Suis- je sur la bonne piste? J'ai mis en fichier joint le fichier excel...Je n'ai pas encore mis toutes les cases à cocher car je ne sais pas s'ils s'agit des bonnes comme je l'ai expliqué auparavant.

Merci encore de ton aide.

15paulmi-2.xlsm (123.17 Ko)

Bonsoir

J'ai bien avancé mais je dois encore un peu peaufiné l'application.

Je te joins déjà un avant projet pour que tu vérifies que je vais bien dans le sens que tu espères.

Ma proposition se trouve dans les onglets Données et Liste.

L'utilisateur devra choisir 0 ou 1 grâce aux mini listes déroulantes se trouvant dans la ligne 2 de l'onglet liste et les noms apparaîtront pour autant qu'ils comportent au moins un des sons demandés.

Pour toi, l'onglet Données est prêt pour accueillir 500 noms mais il suffit de dupliquer la formule dans la colonne A pour augmenter les noms.

J'ai fait quelques essais complémentaires : enlèves les si nécessaire.

J'ai également déjà commencé l'impression de la liste.

Fais quelques essais et si cela convient, je parachèverai l'application et je donnerai un mode d'emploi ainsi que les explications de "Comment cela marche" mais maintenant il est fort tard et je vais dormir...

A+

Chris

12paulmi-2.xlsm (184.33 Ko)

Bonsoir,

Merci énormément pour l'attention que tu portes à ce projet.

Ton fichier colle très bien à l'idée que j'avais!

J'ai déjà commencé à renseigner la base que tu as créé. J'avais peut-être prévu un peu juste en disant 500 mots, je pense qu'il y en aura plus. Mais apparemment ce n'est pas souci, je copierai ta formule.

Par contre une petite remarque: Dans mon idée, je voulais que l'utilisateur ait en réponse des mots ne contenant que les mots avec les sons choisis, sans d'autres sons . (par exemple: je veux des mots contenant les sons [r], [l] ,[a], [u], [p], , Excel lui renvoie: (parapluie, pull, pluie, rue, Paris, plat) , mais ne renvoie pas de mots contenant d'autres sons, Dans l'exemple, "poule" ne serait pas affiché.

Je continue de travailler sur la base de données et je te tiens au courant.

Merci encore et bonne soirée!

Euh... là je suis un peu largué...

Je ne connais que 2 façons de tester : ET / OU

Dans le tableau que je t'ai envoyé, j'ai utilisé le test OU. CAD que tous les mots contenant au moins un des sons demandés apparaît.

Le test ET se traduira par le fait que seulement les mots contenant tous les sons demandés apparaîtront.

Dans l'exemple que tu donnes, tu présentes un cas mixte car tu demandes "P" parmi les sons et si je ne me trompe, le mot "poule" contient bien le son P. Pourquoi ne doit il pas apparaître dans le cas des tests avec OU.

Et si nous prenons le test ET : c'est encore pire car tu fais apparaître parapluie (ok) mais aussi pull ou je ne vois pas de r ni de a ni de i de même pour les autres mots que tu cites ou il n'y a pas les sons demandés.

Il y a manifestement une règle qui me manque.

Peux tu préciser ?

J'ai terminé le tableau et le mode d'emploi et j'étais prêt à te l'envoyer mais maintenant je bloque.

Hum... en relisant attentivement ta phrase, ne voudrais tu pas dire qu'il faut exclure les mots contenant un son non demandé ?

Si c'est cela, c'est naturellement un peu plus compliqué.

Confirmes moi et je réfléchi.

A+

Chris

Bon pour te rassurer : j'ai trouvé comment faire.

Je rectifie le comment cela marche demain et je te l'envoie.

Ce cas était très intéressant.

Ne remplis pas trop la base que je t'ai donnée car la formule principale a fortement évoluée.

J'ai aussi adapté à 1000 lignes.

Bonne nuit et à demain.

Chris

Bonjour,

C'est exactement cela: il faudrait exclure tous les mots ne contenant pas les sons demandés.

Pour l'exemple, "poule" est exclu car le son "ou" n'est pas demandé. "Pull" par contre est bien dans la liste car il contient les sons "u", "p", et "l" qui étaient demandés. (Même si les autres sont absents) . En fait, dans l'idéal, Excel renvoie tous les mots contenant une partie ou tous les sons demandés, à l'exclusion de tous ceux qui n'ont pas les sons demandés.

Merci encore, bonne journée.

Bonsoir,

Comme promis, voici le classeur je l'espère, terminé.

Tu as un mode d'emploi pour Utilisateur ainsi qu'un Comment cela marche où j'ai essayé d'être le plus clair possible.

Reviens moi si questions complémentaires ou si modification nécessaire.

Bon amusement !

Chris


Encore moi :

Voici le même fichier mais avec onglets masqués et protégé par un mot de passe qui est : administrateur

Je propose de l'envoyer ainsi aux utilisateurs.

Donc quand tu auras mis à jour la base de données : il suffit de masquer les onglets et de restreindre le ruban au dessus et de protéger le classeur (à toi de choisir le mot de passe que tu désires naturellement)

A+

Chris

9paulmi-4.xlsm (159.36 Ko)
18paulmi-5.xlsm (165.50 Ko)

Toujours moi...

J'avais oublié dans mes explications le Comment faire pour augmenter le nombre de ligne (si nécessaire naturellement).

Je t'ai également mis comment faire pour enlever l'affichage de la Barre de formule (pour rendre invisible les formules dans l'exemplaire à distribuer aux utilisateurs).

J'aurais aussi voulu savoir comment tu gères le son "ou".

J'ai été sur internet et j'y ai vu dans une des explications qu'il fallait utiliser U pour le son "ou" et Y pour le son "U".

Manifestement ce n'est pas ce que tu fais. Alors par pure curiosité, je voulais comprendre...

A+

Chris

Bonjour,

Je me suis aperçu que j'avais oublié de mettre un Comment faire pour augmenter le nombre de ligne (si nécessaire naturellement)

Je l'ai ajouté dans le Comment cela marche. J'ai également ajouté comment ne pas afficher la Barre de formule (pour ne pas montrer les formules.

Par pure curiosité, pourrais-tu me dire comment tu représentes le son "OU" ? J'ai été consulté internet et j'y ai vu une grille qui semble dire que le signe U signifie le son "OU" et le signe Y sert pour le son "U"

Ce n'est manifestement pas ce que tu fais alors je voulais savoir s'il y avait différentes façons d'appréhender les signes phonétiques.

A+

Chris

18paulmi-4.xlsm (159.78 Ko)

Bonsoir Chris

Tout d'abord un énorme merci, le résultat est exactement celui que je souhaitais!

Je t'avouerai que, vu mon faible niveau en programmation, je devrai lire plusieurs fois le "comment cela marche" pour bien comprendre le fonctionnement. J'ai compris quelques principes de base, mais pas tout . A tête bien reposée et en approfondissant mes connaissances,je ne désespère pas d'y arriver

Concernant la notation des sons, je vais utiliser la notation de l'alphabet phonétique international, dans laquelle, effectivement , le son ou de "poule" apparaît comme [u] et le son u de pull est codé [y]. J'ai donc du faire une erreur en codant pull en mettant [u] au lieu de [y]. (Il y a d’ailleurs d'autres faux-amis dans cet alphabet, par exemple le son ll de "famille", "voyelle" ou "paille" est codé [j] qui ne correspond donc pas au j de jupe.....). Il n'y a d'ailleurs pas, à ma connaissance, d'autre façon de coder phonétiquement les mots.

La présentation de la feuille "données" est parfaite, les lignes de guidages très utiles. Ta suggestion de mettre des lignes en face des mots pour écrire des commentaires est en effet judicieuse. Le passage en plein écran est également une bonne idée, cela peut-il se faire automatiquement? Je masquerai également les onglets "données" et "comment cela marche".

Un petit souci cependant: lorsque je veux lancer une impression, cela fonctionne pour la liste de mots correspondant aux sons "i " et "l" (il n 'y en a que deux pour l'instant, "lit" et "il"), mais lorsque la liste est plus longue (par exemple avec les sons "i", "a", "l", "r"), il me renvoie "erreur d’exécution 1004, référence non valide". Puis, en cliquant sur "débogage", il surligne en jaune "ActiveSheet.PageSetup.PrintArea = "$B$1:INDIRECT(BA1)". Erreur de manip de ma part?

Je vais maintenant m'amuser à coder les mots:) (j'ai fait une pré liste, j'en suis à 971, mais ça ne devrait pas trop évoluer, et tes explications pour augmenter le nombre de mots au delà de 1000 sont parfaitement claires).

Je t'informerai et te ferai parvenir le fichier "final" dès qu'il sera prêt.

Encore une fois, merci pour tes compétences et ton travail formidable, qui m'ont donné envie d'en savoir plus sur la programmation sous Excel.

A +

Bonsoir,

Content que cela convienne.

Je te joins à nouveau le fichier avec les lignes de conduites et j'ai aussi augmenté un peu la hauteur pour faciliter l'écriture des commentaires.

Pour ce qui est de l'impression : je ne comprend pas : chez moi cela marche parfaitement mais ma base de donnée contient seulement une vingtaine de mots.

Peux tu me dire combien de mots apparaissent avec ta sélection ?

Ou encore mieux : m'envoyer ton fichier tel quel pour que je puisse comprendre ce qui ne va pas.

Je réfléchis pour voir si possible de rendre automatique la mise en plein écran. Il faudra probablement faire une petite macro car je ne vois pas de fonction pour réaliser cela.

A+

Chris

8paulmi-4.xlsm (160.55 Ko)

bonsoir,

Avec la dernière version de ton fichier, l'impression fonctionne bien, nickel. Peut être un bug qui venait de chez moi....

Impeccable pour les lignes de commentaires.

Je vais commencer à construire la base de données des mots. Pour la macro du plein écran, t'embête pas, j'ajouterai dans le mode d'emploi qu'il est plus confortable de se mettre en plein écran.

Merci encore, je t'enverrai le fichier final. Ca risque de me prendre un peu de temps mais ça vaut le coup:)

Bonne soirée, A +!

Bonsoir,c'est encore moi.

J'ai parlé trop vite, l'erreur d'impression est revenue.

Je joins le fichier dans lequel j'ai entré une quarantaine de mots.

Lorsque tous les sons sont sélectionnés, par exemple, j'ai l'erreur 1004 lorsque je clique sur impression.

Aurais -tu la même chose?

A+

11paulmi-4.xlsm (160.71 Ko)

Désolé mais chez moi tout fonctionne nickel !

J'ai essayé de 1 son à 30 sons, un à un et toutes les impressions simulées fonctionnent et j'arrive pour 30 sons à 2 pages.

Comme tu dis que cela a marché, as-tu fais une manœuvre particulière, qui n'a peut être rien à voir avec l'impression, mais qui dérègle Excel.

Est-ce que ton imprimante est connectée ou as tu fais une manipulation d'impression pour autre chose en choisissant comme imprimante par défaut autre chose que l'imprimante habituelle (PDF par exemple) ou bien ton imprimante serait elle non définie.

Je lance des pistes car ce n'est pas normal et il faut essayer de comprendre la manipulation que tu as faite.

Essaies peut être de me décrire TOUTES les manipulations que tu fais (même si tu te grattes le nez...)

Ce que je veux dire, c'est que l'on fait parfois des manipulations qui nous semblent insignifiantes mais qui sont parfois cruciales en informatiques.

Encore une idée : es tu sur un réseau et ton imprimante est elle rattachée au serveur ? Auquel il faut savoir si tu n'est pas déconnecté temporairement du réseau ce qui expliquerait que cela marche parfois et parfois pas.

A ce stade là, j'ai difficile de t'apporter mon aide à moins de venir sur place... ce qui parait difficile : je ne sais même pas où tu crèche dans le monde...

Envoies moi quand même le descriptif de tes manip, on sait jamais...

A+

Chris

PS : essaies de mettre en surbrillance la zone que tu veux imprimer et lance la pré visualisation (Aperçu) normale (donc sans passer par la macro) en demandant d'imprimer la sélection ou va dans la mise en page de l'impression et fais manuellement le paramétrage dans l'onglet Feuille de la zone à imprimer et puis essaies de lance aperçu. Si cela fonctionne c'est que le problème n'est pas du côté de l'imprimante.

Je continue à réfléchir...

Bonjour Chris,

Concernant les manip, j'ai essayé en n'en faisant aucune (j'ai même résisté à la tentation de me gratter le nez ).

J'ai juste appuyé sur "impression". Je te joins les captures d'écran (après avoir appuyé sur impression, puis "débogage".

Pas de pb concernant mon imprimante (elle n'est pas en réseau, elle est mise par défaut pour l'impression, et je peux tout à fait imprimer en faisant ce que tu m'as dit (en passant par la sélection des cellules puis impression de la plage sélectionnée, cela fonctionne très bien).

J'ai aussi tenté en ouvrant le fichier avec libreoffice, la macro impression marche très bien. Donc je pense qu'il doit y avoir un problème avec ma version ou mes paramétrages d'excel. N' y a t-il pas une histoire de mot de passe? (tu m'avais parlé d'un mot de passe "administrateur" à rentrer, mais je ne sais pas où entrer ce mot de passe).

En tout état de cause, ce n'est pas dramatique, si ça vient de moi, les utilisateurs pourront imprimer. Pour moi, j'imprimerai juste en sélectionnant la plage de cellules à imprimer. Donc ne te casse pas la tête

Bon week-end , à+

1 2 3

En fouillant un peu, j'ai vu qu'il détectait une erreur sur la case BA1. (Il affiche : #NOM?)

Je joins une capture d'écran.

4

Encore moi:)

Alors en fait j'ai remarqué un truc :

Quand j'ouvre le fichier que tu m'as transmis en dernier, tout fonctionne très bien. Et j'ai ceci dans la case BA1 (capture plus bas).


Et c'est dès que je rajoute un mot dans la base de données, et même si j'annule cet ajout, que je me retrouve avec l'erreur en case BA1 dont j'ai fait une capture plus haut.

Voilà, je t'embête plus:)

Bonne soirée

5
Rechercher des sujets similaires à "projet complexe faisable neophyte"