Que choisir pour extraire de Excel et afficher dans Excel?

Fermé
starter01 - 12 févr. 2013 à 09:56
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 22 févr. 2013 à 12:42
Bonjour à la communauté!
 Sur une feuille Excel, je dispose d'un certain nombre de questions d'évaluation. A chacune de ces question, l'élève répond par Vrai ou Faux avec un indice de certitude (résolu hier). Parmi ces questions, j'aimerais maintenant en tirer 15 au hasard qui devraient apparaître, (j'ignore ce qui est faisable et de plus simple): sur une autre feuille Excel? un formulaire Excel?, autre? 
En complément d'info, je dispose en fait et en tout, de 12 feuilles de questions mais ce qui change n'est que la matière ayant trait aux questions sur la feuille. Le protocole à appliquer reste le même. Peut-être qu'une liste déroulante qui s'affiche sur une feuille ou formulaire unique pourrait permettre de choisir l'envoi des 15 questions d'une des feuilles 1 à 12. Enfin, l'affichage d'une question à la fois pour répondre aux 15 questions serait l'idéal.
 Quelqu'un voudrait bien me dire, SVP, comment je devrais envisager de résoudre? Je pourrais alors me mettre à la tâche et vous demander au besoin comment sortir de tel point où je n'en sortirais pas. D'avance merci!            
                
A voir également:

54 réponses

...intéressant! Oui, bonne idée que de le laisser continuer tout de même. Il sera moins frustré mais bien informé! La prochaine fois il y pensera 2 fois avant de répondre... Je télécharge ton nouveau form et je l'essaies... Merci.
0
oui, ça me convient bien ! Tu as bien solutionné le problème. J'ignore quels détails vont surgir en finalisant mais là nous sommes (tu es) au bout. Je préfère compléter (transférer) les données réelles sur ton nouveau Form et le tester dans ses fonctionnalités. Pour l'instant, as-tu d'autres consignes à me donner? Puis-je y aller?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
13 févr. 2013 à 16:36
Non vas y fonce. ATTENTION aux erreurs de saisies maintenant....................
Dans le désordre :
- ajoute autant de feuilles que d'article et RENOMME LES en conséquence,
- copie/colle toutes tes questions réponses en ajoutant les 1 et 0 nécessaires pour les éliminations,
- respecte bien les colonnes de chaque feuille, y compris Candidats
- dans le code remplace les adresses mails (précisé plus haut)

Puis teste, teste et reteste à volonté.

J'ai intégré à ce classeur une feuille "résultats". Pour l'instant elle ne sert à rien. On pourrait, à terme, avec le fichier fini, enregistrer dans cette feuille les meilleurs scores pour chacun, pour chaque article, avec la date par exemple.
Mais ça on verra après les tests.
Pour l'instant, dis moi ce qui bug.
0
Ok, merci. Je fais des enregistrements à chaque étape (exemple, après une feuille de données). Ensuite je teste et, si ça bogue, je reviens à ma version précédente sauvegardée... C'est comme ça que je m'en sors. Pour l'instant Franck, veux-tu que je clôture la question, quitte à y revenir par après? De toute façon tu auras mon feedBack. J'aurais certainement de nouvelles questions à poser d'ici quelques jours ou avant. Dis-moi...
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
13 févr. 2013 à 16:54
non non, ne ferme pas.
J'attends ton retour d'ici quelques jours. pas de souci.
Pas trop tard non plus, d'ici un mois j'aurais dormi et il me faudra du temps pour me remettre dans le bain.
MAis vas y prends bien ton temps pour tester.
0
C'est bien entendu. Je complète ton dernier Form avec les données réelles. Je vais déjà m'en servir ce vendredi en journée pour un test réel. Je reviens vers toi dans les prochains jours en laissant donc la question ouverte. Je tiens à te remercier pour cette belle réalisation! Dans la mesure où tu maîtrises ce système, je crains de ne t'avoir rien apporté en retour jusqu'ici, sauf à montrer, peut-être, que le dialogue (réciproque) est certainement un encouragement significatif pour se motiver. Grand merci, Franck et à bientôt.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
13 févr. 2013 à 17:04
juste un merci en fin de travaux suffit tu sais.
Nous sommes tous bénévoles ici et soucieux de partager les connaissances que l'on possède.

As tu essayé l'envoi de mail? Cela fonctionne t'il comme tu le souhaites?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Oui, attendant j'étais bien en difficulté d'avancer, là c'est réussi (peu importe si l'un ou l'autre problème éventuel sera rencontré). Tout à l'heure j'ai fait un clic su l'envoi mais le système a renvoyé une erreur (je n'avais pas configuré l'adresse.). Maintenant que je finaliser avec mon temps (j'y travaille pour les journées entières) je vais passer tout en revue systématiquement, question de rencontrer le tout de tes commentaires et autres. La questions des emails viendra dont à la queue-leu-leu au finish d'être passé par toutes les lignes. Donc, pas de test immédiat, ça viendra dans la séquence dès que j'y arrive. A+
0
Bien le Bonjour! Franck, J'ai introduit toutes mes données dans ton dernier form. Lu le code et tes explications de ce code. Tout ça est bien intéressant mais je dois y étudier. Alors: j'ai passé plusieurs fois des tests et voici quels sont mes constats:
  l'envoi par email renvoie un message d'erreur (le transport vers le serveur a échoué). Préalablement j'avais mis 3 x mon adresse postale (non, non, rires) email. Comme ça a échoué 3 fois, je suis alors revenu sur ton original (j'avais travaillé sur une copie). Dans ton original j'ai juste changé ton adresse (3x) par la mienne et fait un test sur un article (les questions bidons). A la fin j'ai cliqué sur l'envoi mais j'ai eu le même message d'erreur. Peut-être un POP3 que je n'ai pas vu dans le code? Autre chose que j'ai constatée aussi: tant dans la feuille des résultats de "mon" Form que dans le tien, les questions posées ne s'enregistrent pas. Pourtant à un moment donné j'avais vu qu'il y en restait d'affichées lorsque le test avait été interrompu de manière inopinée. Comme le problème se pose aussi sur ton Form, j'ai pu dédouaner qu'une erreur dans "le mien" en soit la cause ou la seule cause. En effet j'ai renommé "feuilles" et/ou "articles" afin qu'ils correspondent pour se syntoniser. En l'état actuel, aucune trace ne reste donc après une évaluation... Merci de ton aide.
                
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 févr. 2013 à 08:44
Salut salut,
Pour ce qui concerne l'envoi de mail, je me renseigne.

Ma feuille "résultats" n'était pas remplie par mon code, c'est une des améliorations possibles que je te suggérais.
Si tu veux, on peux y stocker les "meilleurs" résultats, par article par personne...
Par contre, il y a une feuille "Questions deja posees" que :
- je vide,
- je complète avec le questionnaire en cours
- elle est utile pour vérifier qu'une question n'a pas déjà été posée,
- en fin de questionnaire, je la vide pour le questionnaire suivant...
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 févr. 2013 à 09:00
Pour ce qui concerne l'envoi de mail, je me renseigne
Mais que je suis c*n!...................
Tu ne peux pas envoyer de mail avec ce code puisque la configuration est celle de mon serveur........
Quel âne je suis!
Désolé.

Les lignes :
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "xxxx.xxxxxxxx-mail.net"
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25

sont à compléter avec tes propres valeurs...
2 => ne change pas
xxxx.xxxxxxxx-mail.net => correspond à l'adresse de ton serveur de mail
25 => correspond au port.
Une discussion à ce sujet
Tu as aussi, je crois, la possibilité de passer par le serveur mail de gmail, avec le port 465. Mes essais à ce propos n'ont pas été concluant..... donc je ne saurais t'aiguiller davantage.

Voir également à cocher la référence Microsoft CDO for Windows 2000 Library. Pour cela :
Sous VBE : Outils/références et la cocher.
0
Bonjour Franck! Je dispose d'un POP3 d'un domaine propre, je peux le configurer sans problème. J'avais lu ton code repris ci-dessus dans ton post mais je n'ai pas reconnu (ça m'a échappé) le xxxx.xxxxxxxx-mail.net = POP3 de l'envoi. Cela étant, ce qui compte est l'enregistrement du résultat xpoints/75 points. le reste est de moindre importance, relève d'un luxe. Pour rappel, la question de l'envoi par email visait à suppléer à un éventuel problème pour l'enregistrement dans Excel lui-même. Dès lors l'email donne la traçe, la preuve que évènement a bien eu lieu.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 févr. 2013 à 09:25
Alors comment souhaite tu l'enregistrement???
J'avais prévu une feuille résultats avec :
- en colonne A les noms des utilisateurs,
- en ligne 1 les noms des articles
Dans ce cas, on enregistre, à l'intersection (Nom, Article) la date + le résultat.
En cas de plusieurs tentatives sur le même questionnaire par le même utilisateur, seul est gardé le meilleur résultat.
Ca te va? ou pas..........

Au fait, il ne s'agit pas de POP3 (courrier entrant), mais de SMTP (courrier sortant).
Si tu arrives à le configurer c'est tout de même plus sympa......................
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 févr. 2013 à 09:27
et en cas de réponse éliminatoire, on n'enregistre rien du tout.........
0
Oui, oui, c'est le smtp, je me suis trompé mais je le savais. J'ai donc changé en mettant celui de mon serveur mail.dddd.ddd.xx, je suis allé cocher la case Microsoft CDO for Windows 2000 Library et ai laissé le port 25. J'ai repassé un test et cliqué sur l'envoi. Le transport continue à échouer. C'est sans doute le port qui n'est pas le 25, je vais étudier la question.
Pour répondre à tes questions, 
- en colonne A les noms des utilisateurs,

- en ligne 1 les noms des articles
Dans ce cas, on enregistre, à l'intersection (Nom, Article) la date + le résultat.
En cas de plusieurs tentatives sur le même questionnaire par le même utilisateur, seul est gardé le meilleur résultat.
Ca te va? ou pas..........
Oui, cela me convient. Dans le cas où le candidat échoue à cause d'une éliminatoire, la case pourrait-elle enregistrer "réponse éliminatoire"?. Un tel aboutissement solutionne ce dernier point qui est l'enregistrement. L'envoi par email donnerait un plus mais qui n'est pas déterminant une fois que le score est sauvegardé.
                
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 févr. 2013 à 09:57
Dans le cas où le candidat échoue à cause d'une éliminatoire, la case pourrait-elle enregistrer "réponse éliminatoire"?. Pourquoi pas?
Ou alors prévoir un enregistrement du style :
01/01/2013¤35¤0 ==> Le 01/01/2013 - 35 pts / 75 - 0 = éliminatoire
02/12/2012¤45¤1 ==> Le 02/12/2012 - 45 pts - 1 = non éliminé
C'est + simple à mettre en place.....
0
...j'oubliais. Dans ma feuille des résultats, le nom des articles de ton Form ont reçu le nom des 12 articles proprement dits (sans espaces) dans les feuilles du questionnaire, tit-top identiques, bien sûr. Je pouvais le faire?
0
...entre temps je vois que c'est bien le port 25 qui me permet d'envoyer depuis où je suis. Là donc je dois m'en aller lire les discussions que tu as précitées
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 févr. 2013 à 10:00
Les noms de articles (entêtes de colonne) de la feuille résultats doivent absolument avoir le même nom que les feuilles.
Dans mon exemple "Article 1" "Article 2" etc sans les guillemets....
0
SUPER BINGO et ...("super" moi c*n). J'avais mis !! (c'est c*n!!) le POP3 au lieu du SMTP. Cela étant, bbil met le 25 entre " => "25". J'ignore si c'est pareil mais puisque ça marche le problème est réglé ! Une amélioration serait de renseigner les points /75 mais bon, c'est déjà bien super ainsi.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 févr. 2013 à 10:24
Pour changer le texte du mail envoyé :
Dans le Module1, tu as une procédure d'envoi du mail :
Sub EnvoiMail(strPour As String, strDe As String, Optional strCC As String)

Qui dit à un moment :
objMessage.TextBody = "Bonjour," & vbCrLf & vbCrLf & _
"Le " & Date & ", " & Utilisateur & " a repondu au questionnaire d'evaluation relatif a l'article : " & vbCrLf & _
Questionnaire.ComboBox1 & vbCrLf & vbCrLf & _
"Le resultat obtenu par " & Utilisateur & " est de : " & Questionnaire.TextBox4 _
& vbCrLf & msgSupp & vbCrLf & _
vbCrLf & "Cordialement." & vbCrLf & vbCrLf

Ca c'est le code du texte envoyé.
Si, donc, tu veux le score /75 dans ce mail, suffit d'ajouter : & "/75" après le score... Donc après Questionnaire.TextBox4, comme ceci :
objMessage.TextBody = "Bonjour," & vbCrLf & vbCrLf & _
"Le " & Date & ", " & Utilisateur & " a repondu au questionnaire d'evaluation relatif a l'article : " & vbCrLf & _
Questionnaire.ComboBox1 & vbCrLf & vbCrLf & _
"Le resultat obtenu par " & Utilisateur & " est de : " & Questionnaire.TextBox4 & "/75"  _
& vbCrLf & msgSupp & vbCrLf & _
vbCrLf & "Cordialement." & vbCrLf & vbCrLf
0
Salut Franck, je suis justement dessus... J'ai lu ton message hier mais je n'ai pas pu le traiter. Je me rends compte de la "gymnastique" du codage (ton codage) qui devient difficulté significative pour mettre en pratique... L'avantage est que j'apprends sur la base de ce qui marche mais ...j'ai du pain sur la planche. Je te remercie donc encore une fois. Bien! Je te transmets sous peu le fichier dont le code correspond à ta dernière intervention directe. C'est ce fichier que j'avais ensuite dédié à la réception des noms, des matières et des questions réelles. Hier j'avais (dans mon fichier réel) ajouté une feuille "Archive" et placé dedans 15 titres de colonnes comme tu l'avais suggéré. Mais je ne crois pas que ça t'avance beaucoup... Je te transmets dont le fichier de ta dernière mouture dont je reprendrai le code. Je te reviens sous peu....
0
voilà: http://cjoint.com/?CBwji4fXnhM
J'ai essayé de mettre en pratique ta suggestion d'hier mais ...pas évident.
0
...cela mène vraiment loin. Ton explication pas à pas est très didactique. Une fois cette implémentation réalisée, j'aimerais savoir comment ou dans quel ordre je devrais étudier "mon informatique" pour progresser. A priori je suis un matheux et j'ai déjà étudié l'algorithmique. J'aimerais développer mais je dois dire de ne jamais avoir réussi à trancher (par exemple) entre langages de programmation (VB?, C#, ...) ni par rapport aux plateformes-serveurs (PHP, ASP.net, ...) et, conséquemment, par rapport à MySqL ou SQL tout court. Bien, bien, ce sera dans un autre "débat". A+
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
22 févr. 2013 à 10:27
Le choix du langage de programmation dépends uniquement de l'objectif à atteindre.
Ici on a travaillé en VBA parce que l'on est parti d'une base Excel. Tu aurais pu très bien programmer cette base en Java, PHP ou en C...
0
Là je suis épaté, Franck! Je vais te dire une chose, Je croyais qu'en descendant un plus plus bas (dans mes compétences en matière) j'allais arriver au niveau du pétrole... Et bien, non! Suis plus bas que le pétrole et pour y arriver il faudra que je remonte... C'est ma découverte de cet avant-midi. Je m'en vais donc "déguster" ta nouvelle mouture. Je te remercie très sincèrement. C'est un peu, peu mais en ce moment je ne trouve rien d'autre à dire.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
22 févr. 2013 à 11:32
de rien.
Aucun souci.
Pour me remercier, tu pourrais, par exemple, apprendre le PHP et m'aider dans mon futur nouveau site.....

Et en remontant, si tu pouvais me rapporter une centaine de barils de pétrole, j'dois faire le plein d'la clio....
0
Je prends au sérieux ta suggestion d'apprendre le PHP. Je ne sais pas à quelle échéance tu places le mot "futur" relativement à un nouveau site, mais, à ce stade, je crois plus probable que je te remonte 100 barils de pétrole pour ta Clio. Toutefois, il y a quelque chose que je saurais très bien faire: soigner l'ergonomie, la navigabilité, les textes conformes à l'attente de certains algorithmes de Google, le choix du titre des pages du site selon une stratégie d'options prenant pour socle de raisonnement les statistiques des recherches publiées par Google lui-même. Je suis très à l'aise dans ce domaine pour y avoir joué des années durant et pour avoir appris comment une action dans le code effectuée aujourd'hui se transforme à terme (variable décidé par Google lui-même), en piège pour le concepteur du site qui va hésiter si la maintenir ou pas... A+
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
22 févr. 2013 à 12:42
De ça :
les textes conformes à l'attente de certains algorithmes de Google, le choix du titre des pages du site selon une stratégie d'options prenant pour socle de raisonnement les statistiques des recherches publiées par Google lui-même

Je suis preneur!...
Mais ce n'est pas le sujet ici. A l'occasion j'ouvrirais un sujet ailleurs et t'interpellerai pour que tu y interviennes.

Merci d'avance.
0