Création d'un formulaire de test

Bonjour,

J'ai un exo à faire pour mon école sur VBA. Hors on a eu que quelques petits cours dessus et le codage et moi on est pas très amis... Et j'ai beau me mettre à fond dedans y a des choses que je comprend pas et je viens vous demander de l'aide ^^

Alors voila, je dois créer un programme sur VBA permettant de tester une personne sur les verbes irréguliers en anglais. J'ai une liste de 223 verbes de 4 colonnes :

  • 1ère avec l'infinitif
  • la 2ème avec le prétérit
  • la 3ème avec le participe passé
  • la 4ème avec la traduction en français

Le but c'est de créer un formulaire de test qui va proposer 30 verbes à l'infinitif aléatoirement et se sera à la personne de compléter sur trois autres champs le prétérit, ... Ensuite la machine devra donner le résultat (ex : 19/30 bonne réponse).

Mais voila je bloque complet pour faire le formulaire avec le tirage aléatoire sur la feuille excel et créer les champs de réponse ...

Si certains pouvait me donner quelques pistes pour que je puisse essayer de comprendre ça serait sympa !!

Merci d'avance

Jimmy

Bonjour Jimmy, bonjour le forum,

• D'abords commence par fournir un fichier exemple. Si nous voulons tester une solution il nous faut de la matière et je n'ai pas envie de recréer ton environnement si toi tu ne daignes le faire...

• Ensuite, pourquoi trois champs ? je n'ai pas compris. Est-ce la personne à droit à trois réponses pour le prétérit ou bien elle doit renseigner prétérit / participe passé et traduction en français ? Ce n'est pas très clair...

Le code ci-dessous permet d'extraire d'une liste de 233 éléments, 30 numéros aléatoires et sans doublons et de les renvoyer dans les cellules A1 à A30 de l'onglet actif :

Public Sub Macro1()
Dim A As Integer
Dim TEST As Boolean
Dim TQ(1 To 30) As Integer
Dim Y As Byte

Do Until Y = 30
    Randomize
    A = Int(223 * Rnd + 1)
    TEST = False
    For I = 1 To 30
        If A = TQ(I) Then TEST = True
    Next I
   If TEST = False Then
        Y = Y + 1
        TQ(Y) = A
    End If
Loop
For I = 1 To 30
    Cells(I, 1).Value = TQ(I)
Next I
End Sub

Bonjour ThauThème,

Merci de ta réponse. Je vais essayer de mieux expliquer et de fournir un fichier excel.

Il faut faire plusieurs formulaire dont un de test qui devra :

  • Tester les connaissances à partir d'un tirage aléatoire de 30 verbes de la liste (merci pour ta macro d'ailleurs !! )
  • La machine propose un verbe à l'infinitif et l'utilisateur devra renseigner les 3 autres champs.

j'ai mis un fichier excel ou il y a trois formulaire :

  • Un d'accueil pour l'application
  • Un de test
  • Un de Base de données où l'on pourra ajouter et supprimer des verbes de la liste

En tout cas encore merci,

J'essai d'avancer de mon côté mais c'est vraiment pas évident ...

Rechercher des sujets similaires à "creation formulaire test"