Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1646 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  QCM sous Power point

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

QCM sous Power point

n°2135727
ptitbubu
Posté le 11-04-2012 à 14:21:38  profilanswer
 

Bonjour à tous,  
 
Je souhaite créer un QCM pour évaluer les connaissances de collaborateurs.  
Je pensais avoir comme support powerpoint.  
 
Mon projet :  
- une série de questions à choix multiples
- je souhaite envoyer ce QCM à tous mes collégues par mail  
- Le but étant de générer un fichier texte ou csv des résultats regroupant toutes les réponses et que celui-ci me soit envoyer par mail automatiquement si c'est faisable. Ce qui me permettrait après de faire une analyse statistique des résultats.  
 
Je suis arrivé au code suivant.  
J'obtiens a peu prés ce que je souhaite :
- l'ouverture du questionnaire  
1) question sur le prénom et nom avant de poursuivre  
2) défilement du QCM sans faire mentions des réponses justes ou fausses  
3) à la fin création sur le bureau (je ne sais pas pourquoi ??????) d'un fichier prenomnom.txt et affichage des résultats en nb question juste/le total et en % de réussite.  
 
Il me manque juste quelques point que j'ai pas réussit à coder  
1) Je souhaiterais que le diaporama (j'utiliserais un executable) se ferme automatiquement à la fin sans intervention humaine.  
 
2) Jevoudrais que le fichier créer me soit automatiquement par mail.  
 
3) Et dans l'idéal pouvoir aussi comptabilisé toutes les réponses pas uniquement juste ou faux.  
 
[cpp]
'Déclaration des variables  
Dim Total, Question As Integer  
Dim Reponse, Nom As String  
Dim Points(100) As Integer 'Déclaration du tableau qui contiendra les réponses  
'Procédure pour le clic sur le bouton ICI dans la première dia  
Sub Init()  
'Une boîte de dialogue pour demandé le nom  
Nom = ""  
Do While Nom = ""  
Nom = InputBox("Quel est votre Prénom et Nom ?", "Bonjour" )  
Loop  
Total = 0 'Le total des points est initialisé  
Question = 2 'La première question porte le numéro 1  
Application.SlideShowWindows(1).View.GotoSlide 3 'Activation de la dia numéro  
End Sub  
'Procédure pour le clic sur le bouton de bonne réponse  
Sub Bon()  
Total = Total + 1 'Le total des points est augmenté de 1  
Points(Question) = 1 'Le tableau des réponses est complété  
Reponse = "bonne." 'Cette variable sera utilisée dans le message affiché par DiaSuivante()  
Module1.DiaSuivante 'Appel de la procédure DiaSuivante  
End Sub  
'Procédure pour le clic sur le bouton de mauvaise réponse  
Sub Faux()  
Points(Question) = 0 'Le tableau des réponses est complété  
Reponse = "fausse." 'Cette variable sera utilisée dans le message affiché par DiaSuivante()  
Module1.DiaSuivante 'Appel de la procédure DiaSuivante  
End Sub  
'Procédure pour le passage à la diapositive suivante  
Sub DiaSuivante()  
Question = Question + 1 'Question suivante  
'Activation de la dia suivante  
Application.SlideShowWindows(1).View.GotoSlide Question + 1  
End Sub  
'Procédure pour le clic sur le point d'interrogation de la dernière dia  
Sub Fin()  
Dim xcl As Object 'Déclaration de la variable qui fera référence à Excel  
Dim ExcelNonOuvert As Boolean  
'La boîte de dialogue  
x = MsgBox("Vous avez répondu correctement à " & Total & " questions sur " & Question - 2 & "." _  
& Chr(13) & "Vous avez donc " & Int(Total / (Question - 2) * 100) & "% de réussite." _  
& Chr(13) & "Cliquez sur le bouton OK", , "Fin du questionnaire" )  
Fichier = Nom & ".txt"  
'sauvegarde des résultats  
'dans un fichier texte  
'portant comme nom celui de la personne qui a répondu au questionnaire  
Open Fichier For Output Shared As #1  
Write #1, Nom  
For i = 1 To Question - 2  
Write #1, Points(i)  
Next i  
Close #1  
 
 
Merci pour votre aide.  
 

mood
Publicité
Posté le 11-04-2012 à 14:21:38  profilanswer
 

n°2137008
ptitbubu
Posté le 16-04-2012 à 21:52:52  profilanswer
 

Bonjour,  
 
Je reviens vers vous.  
Car je suis arrivé à modifier mon code, pour me rapprocher de mon cahier des charges.  
Tout n'est pas encore gagné.  
 
Il me manque ne fait 1 chose :  
Le fichier créer et envoyé par mail ne donne que réponse bonne ou fausse.  
Et j'aimerais obtenir le même type de fichier mais avec la réponse exacte histoire de pouvoir analyser les réponses.  
Pour cette partie je n'ai aucune idée.  
 
Merci pour votre aide.  
 
Ci-dessous mon code  
[code]  
'Déclaration des variables  
Dim Total, Question As Integer  
Dim Reponse, Nom As String  
Dim Points(100) As Integer 'Déclaration du tableau qui contiendra les réponses  
'Procédure pour le clic sur le bouton ICI dans la première dia  
Sub Init()  
'Une boîte de dialogue pour demandé le nom  
Nom = ""  
Do While Nom = ""  
Nom = InputBox("Quel est votre Prénom et Nom ?", "Bonjour" )  
Loop  
Total = 0 'Le total des points est initialisé  
Question = 2 'La première question porte le numéro 1  
Application.SlideShowWindows(1).View.GotoSlide 3 'Activation de la dia numéro  
End Sub  
'Procédure pour le clic sur le bouton de bonne réponse  
Sub Bon()  
Total = Total + 1 'Le total des points est augmenté de 1  
Points(Question) = 1 'Le tableau des réponses est complété  
Reponse = "bonne." 'Cette variable sera utilisée dans le message affiché par DiaSuivante()  
Module1.DiaSuivante 'Appel de la procédure DiaSuivante  
End Sub  
'Procédure pour le clic sur le bouton de mauvaise réponse  
Sub Faux()  
Points(Question) = 0 'Le tableau des réponses est complété  
Reponse = "fausse." 'Cette variable sera utilisée dans le message affiché par DiaSuivante()  
Module1.DiaSuivante 'Appel de la procédure DiaSuivante  
End Sub  
'Procédure pour le passage à la diapositive suivante  
Sub DiaSuivante()  
Question = Question + 1 'Question suivante  
'Activation de la dia suivante  
Application.SlideShowWindows(1).View.GotoSlide Question + 1  
End Sub  
'Procédure pour le clic sur le point d'interrogation de la dernière dia  
Sub Fin()  
'La boîte de dialogue  
x = MsgBox("Vous avez répondu correctement à " & Total & " questions sur " & Question - 2 & "." _  
& Chr(13) & "Vous avez donc " & Int(Total / (Question - 2) * 100) & "% de réussite." _  
& Chr(13) & "Cliquez sur le bouton OK", , "Fin du questionnaire" )  
Fichier = "C:\test.txt"  
'sauvegarde des résultats dans un fichier texte portant comme nom celui de la personne qui a répondu au questionnaire  
Open Fichier For Output Shared As #1  
Write #1, Nom  
For i = 1 To Question - 2  
Write #1, Points(i)  
Next i  
Close #1  
'Envoie mail des résultats  
Dim ol As Object  
Set ol = CreateObject("Outlook.Application" )  
Dim olmail As Object  
Set olmail = ol.CreateItem(MailItem)  
With olmail  
.To = "bruno.lectard@cea.fr"  
.Subject = "Résultat QCM"  
.Attachments.Add "C:\test.txt"  
.Send  
End With  
Set ol = Nothing  
Set olmail = Nothing  
'suppression fichier  
Kill "C:\test.txt"  
Module1.DiaSuivante  
End Sub  
Sub Fermeture()  
ActivePresentation.Close  
End Sub  
[code]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  QCM sous Power point

 

Sujets relatifs
PHP comment comparer des chiffre a 2 point (version)Question conne... Le point en Javascript
Integration module de point relai[Résolu] Calcul de position de point.
L'impression d'un composant graphique à partir d'un pointRotation GluLookAt autour d'un point central
Jeu de Point & Click : C++ ou Actionscript ?Quiz + compteur de point en php
Une question de QCMQCM en php
Plus de sujets relatifs à : QCM sous Power point


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR