VBA - Script - Outil pour apprendre du voc
Résolu
YAC
-
YAC -
YAC -
Bonjour,
J'aimerais, à partir d'un tableau excel de 2 colonnes (une avec des mots en français, l'autre avec la traduction en allemand), avoir un script qui, lorsqu'on l'exécute, affiche dans une boîte de dialogue le mot en français ; et l'utilisateur doit entrer le mot en allemand. Si le mot n'est pas trouvé, il est redemandé à la fin, et ce jusqu'à ce que tous les mots aient été trouvés. Voilà l'idée de base. En gros c'est pour avoir un outil d'apprentissage du vocabulaire plus ou moins intéractif, avec une liste de mots personnalisés.
Est-ce que quelqu'un aurait un tel script sous la main, ou quelque chose qui y ressemble ?
Merci d'avance...
J'aimerais, à partir d'un tableau excel de 2 colonnes (une avec des mots en français, l'autre avec la traduction en allemand), avoir un script qui, lorsqu'on l'exécute, affiche dans une boîte de dialogue le mot en français ; et l'utilisateur doit entrer le mot en allemand. Si le mot n'est pas trouvé, il est redemandé à la fin, et ce jusqu'à ce que tous les mots aient été trouvés. Voilà l'idée de base. En gros c'est pour avoir un outil d'apprentissage du vocabulaire plus ou moins intéractif, avec une liste de mots personnalisés.
Est-ce que quelqu'un aurait un tel script sous la main, ou quelque chose qui y ressemble ?
Merci d'avance...
A voir également:
- Vbascript
- Application pour apprendre à coder - Guide
- Script vidéo youtube - Guide
- Télécharger outil capture d'écran ciseaux - Télécharger - Capture d'écran
- Outil de benchmark gratuit - Accueil - Utilitaires
- Ghost script - Télécharger - Polices de caractères
2 réponses
Bonjour,
Une solution en VBA : code à intégrer dans un module standard :
Une solution en VBA : code à intégrer dans un module standard :
Sub Vocabulaire()
Dim Mots() As String, Traduction As String
Dim Cpt As Integer, BonneTraduc As Integer
Dim DrLig As Long, Lign As Long
Const NombreDeMotsAtraduire As Integer = 10
ReDim Mots(2, NombreDeMotsAtraduire)
'dans la feuille Feuil2 on a en colonne :
'A : les mots en Français
'B : les mots en Allemand
With Sheets("Feuil2")
DrLig = .Range("A" & Rows.Count).End(xlUp).Row - 1
For Cpt = 0 To NombreDeMotsAtraduire - 1
Randomize
Lign = CInt(Rnd * DrLig) + 1
Mots(1, Cpt) = .Range("A" & Lign)
Mots(2, Cpt) = .Range("B" & Lign)
Next
End With
Cpt = -1
Do While BonneTraduc < NombreDeMotsAtraduire
If Cpt < NombreDeMotsAtraduire - 1 Then
Cpt = Cpt + 1
Else
Cpt = 0
End If
If Mots(1, Cpt) <> "" Then
Traduction = InputBox(Mots(1, Cpt), "Traduire le mot : ")
If Traduction = Mots(2, Cpt) Then
BonneTraduc = BonneTraduc + 1
Mots(1, Cpt) = ""
End If
End If
Loop
MsgBox "Fini!"
End Sub