Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Tableaux à deux dimensions dans deux boucles for

1 réponse
Avatar
Jean-mi
Bonjour,

Voici mon probl=E8me : Je voudrais savoir comment remplir
un tableau =E0 deux dimensions en me servant de InputBox.
Je ne sais pas quelles valeurs de retour, et comment les=20
affecter aux variables du tableau.
Je ne sais pas =E9galement comment afficher les variables
dans la feuille Form1.
Voici, entre autres, ce que j'ai fait et qui ne marche pas.
(ielv est le nombre d'=E9l=E8ves,
notes repr=E9sente les notes des =E9l=E8ves.)
Voici ce que j'ai essay=E9 de faire :
Dim notes As Integer, ielv As Integer
Dim eleves(1 To 2, 1 To 3) As variant
For ielv =3D 1 To 2
ielv =3D InputBox("Entrez les noms des =E9l=E8ves", ielv)
For notes =3D 1 To 3
notes =3D InputBox("Entrez les notes des =E9l=E8ves")
Next notes
Next ielv
Form1.Print eleves(ielv, notes)
(J'ai, bien s=FBr, affich=E9 avec succ=E8s les autres donn=E9es).
Quelqu'un peut-il me r=E9pondre ?

D'avance merci,

Jean-michel

1 réponse

Avatar
Patrice Henrio
Déjà on ne modifie pas la variable de boucle sinon cela donne n'importe
quoi.

Donc en algorithmique cela donne
Variable Notes(1 to NombreElèves,0 to NombreDeNotes) as Variant (un tableau
ne doit contenir que des valeurs de même type)
For Ligne = 1 to NombreElèves
Notes(Ligne,0)=NomDeElève 'ici une fonction qui retourne le nom d'un
élève
For Colonne = 1 to NombreDeNotes
Notes(Ligne,Colonne)=NoteDeElève 'ici une fonction qui retourne une
note d'élève
Next Colonne
Next Ligne

Cependant il y a beaucoup plus simple en utilisant un type tElève
type tElève
NomElève as string
Notes() as integer
End Type

Variable Classe(1 to NombreElèves) as tElève

For Ligne = 1 to NombreElève
Input Classe(Ligne).NomElève
For Colonne=1 to NombreDeNotes
Input Classe(Ligne).Notes(Colonne)
Next Colonne
Next Ligne

"Jean-mi" a écrit dans le message de
news:090601c3a081$9a66a770$
Bonjour,

Voici mon problème : Je voudrais savoir comment remplir
un tableau à deux dimensions en me servant de InputBox.
Je ne sais pas quelles valeurs de retour, et comment les
affecter aux variables du tableau.
Je ne sais pas également comment afficher les variables
dans la feuille Form1.
Voici, entre autres, ce que j'ai fait et qui ne marche pas.
(ielv est le nombre d'élèves,
notes représente les notes des élèves.)
Voici ce que j'ai essayé de faire :
Dim notes As Integer, ielv As Integer
Dim eleves(1 To 2, 1 To 3) As variant
For ielv = 1 To 2
ielv = InputBox("Entrez les noms des élèves", ielv)
For notes = 1 To 3
notes = InputBox("Entrez les notes des élèves")
Next notes
Next ielv
Form1.Print eleves(ielv, notes)
(J'ai, bien sûr, affiché avec succès les autres données).
Quelqu'un peut-il me répondre ?

D'avance merci,

Jean-michel