salut tout le monde
j ai créer mon interface et j ai une matrice que je remplie moi même mais je veux recopier ce que j ai saisis dans une matrice afin de faire un calcul entre elle et une autre matrice
et merci encore de votre aide
salut tout le monde
j ai créer mon interface et j ai une matrice que je remplie moi même mais je veux recopier ce que j ai saisis dans une matrice afin de faire un calcul entre elle et une autre matrice
et merci encore de votre aide
Salut
recopier ce que j'ai saisis dans une matricePour autant, un peu de code déjà réalisé serait bien utile.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Private Sub Form_Load() Dim T As Integer Dim Matrice1(2) As Integer Matrice1(0) = 1: Matrice1(1) = 2: Matrice1(2) = 3 'matrice générée par le TextBox Dim Matrice2() As Integer 'Matrice de récupération 'affectation (copie) de Matrice1 dans Matrice2 Matrice2 = Matrice1 'exemple d'utilisation Dim Msg As String 'pour former le message For T = 0 To UBound(Matrice1) Msg = Msg & CStr(Matrice1(T) + Matrice2(T)) & vbCrLf ' calcul en employant les 2 matrices Next T MsgBox Msg End Sub
Soyez sympa, pensez -y
Balises[CODE]...[/CODE]
Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
Balises[C]...[/C] code intégré dans une phrase.
Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
👉 → → Ma page perso sur DVP ← ← 👈
salut encore une fois merci pour ta méthode mais j ai fais ça
et j ai tjr le même cas malgré même si je fais exprés de saisir des données pour tomber dans le 1 ou 3 iem cas mais sa affiche tjr juste donc si vous pouviez m aider sa serait trés gentil de votre part
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 Private Sub Command2_Click() Dim ind As Integer Dim ind1 As Integer Dim ind2 As Integer Dim Ind3 As Integer Dim i As Integer Dim cpt As Integer Dim j As Integer cpt = 0 ind = 0 ind1 = 0 ind2 = 0 Ind3 = 0 For i = 1 To nbr1 Disp(i) = Val(Text1(Ind3).Text) Ind3 = Ind3 + 1 Next For i = 1 To nbr1 For j = 1 To nbr B(i, j) = Val(Text3(ind).Text) ind = ind + 1 Next Next For i = 1 To nbr1 For j = 1 To nbr Alloc(i, j) = Val(Text4(ind1).Text) ind1 = ind1 + 1 Next Next For i = 1 To nbr1 For j = 1 To nbr Manque(i, j) = B(i, j) - Alloc(i, j) Next Next For i = 1 To nbr1 Da(i) = Val(Text2(ind2).Text) ind2 = ind2 + 1 Next j = 1 For i = 1 To nbr1 cpt = cpt + Alloc(i, j) Next If (cpt > Disp(j)) Then MsgBox "Erreur Allocation" Else If (cpt = Disp(j)) Then MsgBox "Juste" Else MsgBox "zarbi" End If End If End Sub
Tu peux modifier ton code comme ceci :
Et nous dire ce que vaut cpt ? Je pense que cpt vaut 0 mais j'aimerais en etre sur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part MsgBox "Juste et cpt vaut " & cpt
Au passage, puisque ton probleme ne semble pas resolu (meme si j'avoue n'y avoir rien compris) pourquoi as tu clique sur le bouton "Resolu" ?
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
1 le cpt sert a faire la somme d une colonne de la matrice aprés je teste avec une case d un tableau afin de voir si sont = < >
j ai cliqué sur résolu pq je pensais que c etait bon mais une fois que j ai commencé le traitement c était plus cas
Pour le bouton "Resolu" il suffisait alors de cliquer de nouveau sur celui-ci (je l'ai fait pour toi cette fois ci).
En dehors du fait que je n'ai strictement rien compris a ton probleme, tu peux deja alleger un peu ton code par exemple comme ceci :
Ca marchera ni mieux ni moins bien en l'etat actuel mais ca evite deja d'avoir un paquet de variables Indx totalement inutiles.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 Private Sub Command2_Click() Dim i As Integer Dim cpt As Integer Dim j As Integer For i = 1 To nbr1 Disp(i) = Val(Text1(i-1).Text) Da(i) = Val(Text2(i-1).Text) For j = 1 To nbr B(i, j) = Val(Text3(j-1).Text) Alloc(i, j) = Val(Text4(j-1).Text) Manque(i, j) = B(i, j) - Alloc(i, j) Next j Next i j = 1 For i = 1 To nbr1 cpt = cpt + Alloc(i, j) Next j If (cpt > Disp(j)) Then MsgBox "Erreur Allocation" ElseIf (cpt = Disp(j)) Then MsgBox "Juste" Else MsgBox "zarbi" End If End Sub
On ne sait pas non plus ce que valent les variables nbr et nbr1
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
pour les valeurs de nbr=val(Form1.Text1.Text)une valeur saisie dans la premiere form et nbr1=val(Form1.Text2.Text) la même chose pq dans la premiere form on saisit 2 nombre qui réprésente une les lignes des matrices et l autre les colonnes
j ai afficher le tableau dans un msgbox et sa m affiche le vide donc ma maniere de récuperer les donnés saisie sur la matrice en form de textbox est fausse
Mais a quel niveau les variables nbr et nbr1 sont-elles declarees ?
Ajoute en debut de ta procedure :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Private Sub Command2_Click() msgbox "nbr = " & nbr & vbcrlf & "nbr1 = " & nbr1
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
elles sont des variables globales que j initialise dans le Form Load
et j ai vu que le contenu n est pas celui que j ai saisi
quand j ai refais l initialisation j ai une erreur groupe de controle n existe pas sur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Private Sub Command2_Click() Dim i As Integer Dim cpt As Integer Dim j As Integer Dim ligne As Integer nbr = Val(Form1.Text1.Text) nbr1 = Val(Form1.Text2.Text) MsgBox "nbr = " & nbr & vbCrLf & "nbr1 = " & nbr1 For i = 1 To nbr1 Disp(i) = Val(Text1(i - 1).Text) Da(i) = Val(Text2(i - 1).Text) For j = 1 To nbr 'B(i, j) = Val(Text3(j - 1).Text) la ;) Alloc(i, j) = Val(Text4(j - 1).Text) Manque(i, j) = B(i, j) - Alloc(i, j) Next j Next i
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
oui mais je vois pas trop ou ya eu un probleme et je m my connais pas en débogage donc si tu peux m aider sa serait fort gentil de ta part
mnt j ai erreur 340 sur la même ligne que je t ai montré au paravant avec groupe de controle 1 n existe pas
As tu un groupe de controles Text3 sur ta feuille ?
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
Oui biensur ¨^^"
C'est etrange parce que j'aurais plutot tendance a penser que "bien sur" il n'y a pas de controle Text3 avec propriete Index = 1
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
Oui mais mnt le cpt ne bouge plus ou plutot il ne fait que s incrémenter d une manière simple non la somme avec la colonne de la matrice :'( genre cpt=cpt+1 alors que normalement cpt=cpt + Alloc(i,j)
Bon, je pense avoir vraiment essaye de t'aider mais tes questions partent dans tous les sens, j'ai vraiment du mal a te suivre donc fais l'effort de poster des questions claires et precises ou je serai oblige de fermer cette discussion.
Tu as demarre ce sujet en demandant comment copier un tableau, ProgElect te donne une solution que visiblement tu n'appliques pas. Puis tu nous parles d'un controle ayant visiblement un probleme au niveau de ses Index et maintenant un autre probleme de code.
Si ces problemes ne sont pas lies, une question/probleme = une discussion.
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
oui tu as raison je m excuse encore merci d avoir répondu pour le truc de cpt je cree une nouvelle discussion alors ?
Si c'est un probleme qui n'a rien a voir avec la question d'origine, oui, mais prends le temps d'ecrire une question COMPLETE. C'est a dire (entre autre) que tu expliques d'ou viennent les differentes variables utilisees, a quel niveau elles sont declarees et tu joins les portions de code necessaires a la comprehension de ton probleme. Tu peux aussi commencer par une explication generale de ce que tu cherches a faire, bref, mets le maximum d'informations utiles, plus la question est claire, plus tu as de chances d'avoir une reponse rapide et directe.
Je ne saurais trop t'encourager a apprendre le debugage (points d'arrets, espions, etc..) Personnellement j'utilise beaucoup l'instruction "Debug.Print" (fais une recherche dans l'aide de VB). Tu economiseras ensuite 10 fois le temps que tu consacreras a cet apprentissage (et le notre aussi par la meme occasion )
Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
Vous trouvez une reponse particulierement utile ? Votez pour !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager