Auteur |
Message |
lud-inh0
Newbiiiie
Sexe:
Messages: 7
|
Posté le:
Mer 28 Mar 2007 - 10:38 |
|
Bonjour, voilà je vous explique mon problème...
Je voudrai faire un tableau qui contiendrai le nom du client (txtclt), la référence (txtref) ainsi que le nom de la profil qui sera traité (compie2)...
Je rentre ça dès le début (form1) et ça va se loger dans le form3 comme prévu...dont le code :
Code: |
Total.txtclt.Text = txtclt.Text
Total.ref.Text = Txtref.Text
Total.profilN = Compie2.Text |
-Dans le form2, il y a des valeurs à saisir ou à sélectionner dans des combobox (txt_compie) et des calcul qui se font (Larg+haut) * nbface = resu pi ensuite ya resu * long * nbpièce = TOTG. (le calcul du resu dépend de la pièce)
-Dans le form3, j'ai 3txtbox qui est un copier-coller de la form1 (voir code) et j'ai 3listbox qui concerne le nom de ma pièce (nom_p), le traitement (trait) et le total (tot), total qui vient du form2 (totG), à l'aide des boutons (TotalPièces) et un autre qui permet de multiplier TotalPièce * un chiffre saisie...(le total sera ds "txtens")...Donc ce que je voudrai c'est stocker le nom du client, la ref et le nom du profil (tant que je ne ferme pas laplli) et stocker oci les 3listbox ainsi que le txtens pour ensuite pouvoir ajouter des pièces ainsi de suite jusqu'à NON il me sort le cumul des txtens et aussi tous les profil et pièces comme celà...
Code: |
Ici, le client a ramené deux profil "bati" et "Caillebotis",
Le Client : "Popo" (txtclt)
Sa référence "987" (ref)
Pour un profil : "Bati" (compie2)
Tôle (nom_p) ==> 1.8 (tot)
Carrée (nom_p) ==> 2.12 (tot)
Toutes les pièces font : "3.92" m² (Ttot)
Avec un Ensemble est de : "2" (nbens)
Le développé de toutes les pièces représente : "7.84" m² (txtens)
Pour un profil : "Caillebotis"
Rond ==> 0.8
HEA ==> 0.521
Toutes les pièces font : "1.321" m²
Avec un Ensemble est de : "2"
Le développé de toutes les pièces représente : "2.642" m²
Pour ce même client : Un développé de ("Somme") "10.482" m² (7.84 + 2.642) |
Aidez-moi SVP |
|
|
|
|
N'oubliez pas de vous inscrire à la communauté pour participer. Si vous êtes déjà membre, connectez-vous pour faire disparaître ce bandeau publicitaire. |
Jutenga
Accro à Web-IG
Sexe:
Messages: 202
Localisation: Dans le 94
|
Posté le:
Mer 28 Mar 2007 - 11:29 |
|
Alors pour faire ceci, il te faut un tableau à plusieurs dimension.
Dans ton cas, il te faut le nom du client, la référence et la profil. Donc trois colonne après, le nombre de ligne c'est toi qui voit ^^
Voici comment on déclarer un tableau en VB :
Code: |
Dim t(n,2) as string
|
t c'est le nom de ton tableau
(x,y) x les lignes, y les colonnes
"String" le type de ton tableau. Dans ton cas, il faut mettre string car tu réuni plusieurs types de données(chaîne de caractère et entier ).
Je pense que si tu veux assigner quelque chose dans ton tableau, il faut faire comme ça :
Code: |
t(0,0) = txtclt.Text
t(0,1) = Txtref.Text
t(0,2) = Compie2.Text
|
Voili voilou ^^
J'espère que celà va t'aider ^^'
Puis après, si tu veux, automatiser ton ajout dans le tableau, initialiser ton tableau,supprimer une ligne de ton tableau... tu peux faire des fonctions ^^
Ou une autre solution, te connecter à une BDD pour les stocker dans une tables !!!
(ps: j'ai trouvé cette réponse sur le net ici ) |
|
|
|
|
lud-inh0
Newbiiiie
Sexe:
Messages: 7
|
Posté le:
Jeu 29 Mar 2007 - 10:05 |
|
|
|
|
Jutenga
Accro à Web-IG
Sexe:
Messages: 202
Localisation: Dans le 94
|
Posté le:
Jeu 29 Mar 2007 - 11:27 |
|
Bon...
À ce que je vois, ce que je t'ai proposé ne t'a pas plus
aussi bien ici que sur msn...
On ne va pas te macher le travail non plus...
Je t'ai donné une solution toute prête, il fallait juste que tu fasse à ta sauce...
Mais, dans ces cas là, si ça te plaît pas dis le au moins...
C'est un peu plus poli ^^
Autre solution : tu sauvegarde tes données dans un fichier texte que tu ouvre à chaque fois que tu en as besoin et avant de le fermer tu enregistre toutes les modifications que tu as faites .
Voilà |
|
|
|
|
lud-inh0
Newbiiiie
Sexe:
Messages: 7
|
Posté le:
Jeu 29 Mar 2007 - 11:35 |
|
Ton code je lai mi ci dessous lol...
Code: |
Dim t(0, 9) As String
t(0, 0) = Total.txtclt.Text
t(0, 1) = Total.ref.Text
t(0, 2) = Total.profilN.Text
t(0, 3) = Total.nom_p.Text
t(0, 4) = Total.trait.Text
t(0, 5) = Total.tot.Text
t(0, 6) = Total.Ttot.Text
t(0, 7) = Total.nbens.Text
t(0, 8) = Total.txtens.Text |
la preuve lol...le truc c ke jarive pô a le remetre ds le txtrecap |
|
|
|
|
Jutenga
Accro à Web-IG
Sexe:
Messages: 202
Localisation: Dans le 94
|
Posté le:
Jeu 29 Mar 2007 - 12:07 |
|
Bah oui.
Le tableau que tu as crée enregistrera un seul client.
Pour afficher dans ton textrecap, tu les mets dans un textbox ou un listbox.
Si il dit qu'il trouve pas les variables, c'est que ton tableau n'est pas en global, étant donné que c'est un form différent.
Franchement dans ton programme, tu as une ouverture et fermeture de fichier...
Moi dans ma formation, on m'a appris d'abord les bases de programmation en VB structures conditionnelles(if,while...).
Pour ensuite passer à de la programmation de plus en plus compliqué.
L'ouverture et fermeture de fichier était vers la fin de mon programme d'étude.
Les tableaux étaient situés avant les fichiers.
Donc je trouve bizarre que tu ne le sache pas(avis comparatif avec ma formation :/ ).
enfin ya des trucs qui me paraissent bizarres...
(ps: évite le langage sms merci, c'est pas moi qui va te le répéter sinon ^^) |
|
|
|
|
lud-inh0
Newbiiiie
Sexe:
Messages: 7
|
Posté le:
Jeu 29 Mar 2007 - 14:41 |
|
Pour ce qui est de la formation je ne faisais pas de VB donc c'est pour ça que je demande de l'aide...Enfin j'en ai fais grâce au tuto des forums mais pour les tableaux je sèche...
Citation: |
Pour afficher dans ton textrecap, tu les mets dans un textbox ou un listbox. |
C'est une textbox que j'ai codé sur un bonton Récap
Code: |
Private Sub cmdRecap_Click()
Recap.txtrecap.Text = "Le Client : " & txtclt.Text & vbCrLf & _
"Sa référence " & ref.Text & vbCrLf & _
"Pour un profil : " & profilN.Text & vbCrLf
For i = 0 To nom_p.ListCount - 1
Recap.txtrecap.Text = Recap.txtrecap.Text & vbCrLf & _
"- " & nom_p.List(i) & " en " & trait.List(i) & " >> " & tot.List(i) & " m²."
Next
Recap.txtrecap.Text = Recap.txtrecap.Text & vbCrLf & vbCrLf & _
"Toutes les pièces font : " & Ttot.Text & " m²." & vbCrLf & _
"Avec un Ensemble est de : " & nbens.Text & vbCrLf & vbCrLf & _
"Le développé de toutes les pièces représente : " & txtens.Text & " m²."
Recap.Show
End Sub |
Pour ce qui est de mon tableau, ça ne marche toujour mais dans mon module j'ai ton code
Code: |
t(0, 0) = Total.txtclt.Text
t(0, 1) = Total.ref.Text
t(0, 2) = Total.profilN.Text
t(0, 3) = Total.nom_p.Text
t(0, 4) = Total.trait.Text
t(0, 5) = Total.tot.Text
t(0, 6) = Total.Ttot.Text
t(0, 7) = Total.nbens.Text
t(0, 8) = Total.txtens.Text |
Est ce que celà est bien fais C'est cohérent |
|
|
|
|
Jutenga
Accro à Web-IG
Sexe:
Messages: 202
Localisation: Dans le 94
|
Posté le:
Ven 30 Mar 2007 - 10:15 |
|
Bah à vrai dire, je ne sais pas...
JE ne fais pas de VB très souvent...
J'ai juste chercher sur le net :/
Après, les bases que j'ai en VB sont celles que j'ai acquises en cours et en TP.
Du moins, les structures du VB + mes connaissances en algorithmique ont fait que je réussissai assez bien ce que je faisai...
Mais bon, après chacun son truc...
De plus, je n'ai pas l'appli sous les yeux c'est pas facile...
En fait, je marche surtout par test...
Mais bon comme en ce moment je n'ai pas trop le temps, je dois préparer comme tout bon deuxième année mes PTI pour mon BTS ^^
Donc vila c'est tout ce que je peux faire pour toi :s
désolé |
|
|
|
|
lud-inh0
Newbiiiie
Sexe:
Messages: 7
|
Posté le:
Ven 30 Mar 2007 - 15:51 |
|
Comment afficher ces données dans un textbox appelé txtrecap?
Code: |
'Là c'est dans un module et je voudrai les afficher dans un textbox...
Option Explicit
Public Function fiche() As Integer
Dim cpt As Integer
Dim t(0, 8) As String
If cpt = 0 Then
t(0, 0) = Total.txtclt.Text
t(0, 1) = Total.ref.Text
t(0, 2) = Total.profilN.Text
t(0, 3) = Total.nom_p.Text
t(0, 4) = Total.trait.Text
t(0, 5) = Total.tot.Text
t(0, 6) = Total.Ttot.Text
t(0, 7) = Total.nbens.Text
t(0, 8) = Total.txtens.Text
Else
t(cpt, 0) = Total.txtclt.Text
t(cpt, 1) = Total.ref.Text
t(cpt, 2) = Total.profilN.Text
t(cpt, 3) = Total.nom_p.Text
t(cpt, 4) = Total.trait.Text
t(cpt, 5) = Total.tot.Text
t(cpt, 6) = Total.Ttot.Text
t(cpt, 7) = Total.nbens.Text
t(cpt, 8) = Total.txtens.Text
End If
cpt = cpt + 1
End Function |
|
|
|
|
|
Marc3001
Accro à Web-IG
Sexe:
Messages: 126
Localisation: Guingamp
|
Posté le:
Mar 03 Avr 2007 - 08:47 |
|
Déjà là ta condition elle sert à rien.... |
|
|
|
|
lud-inh0
Newbiiiie
Sexe:
Messages: 7
|
Posté le:
Mar 03 Avr 2007 - 09:26 |
|
Marc3001 a écrit: |
Déjà là ta condition elle sert à rien.... |
Pourquoi donc ?
En faite maintenant j'ai ça :
Code: |
Dim cpt As Integer
Dim t(10, 9) As String
Public Function fiche() As Integer
t(cpt, 0) = Total.txtclt.Text
t(cpt, 1) = Total.ref.Text
t(cpt, 2) = Total.profilN.Text
t(cpt, 3) = Total.nom_p.Text
t(cpt, 4) = Total.trait.Text
t(cpt, 5) = Total.tot.Text
t(cpt, 6) = Total.Ttot.Text
t(cpt, 7) = Total.nbens.Text
t(cpt, 8) = Total.txtens.Text
cpt = cpt + 1
End Function |
mon tableau s'appelle t et comment l'apeller msgbox ("t") ? |
|
|
|
|
lud-inh0
Newbiiiie
Sexe:
Messages: 7
|
Posté le:
Mar 03 Avr 2007 - 13:33 |
|
Enfiate j'ai réussi à faire ce que je voulais mais bon c'est pas encore ça...
Code: |
Private Sub cmdajoutP_Click()
Dim Repajout
Dim Tab2 As String
Dim t(1, 9) As String
Repajout = MsgBox("Souhaitez-Vous Ajouter un Profil", vbYesNo + vbQuestion, "Quitter ou non")
If Repajout = vbYes Then
'boucle sur le tableau t
Tab2 = ""
For i = 0 To UBound(t, 1)
For j = 0 To UBound(t, 2)
MsgBox "Cellule(" & CStr(i) & "/" & CStr(j) & ") Contenu : " & t(i, j)
Tab2 = Tab2 & t(i, j) & vbTab
Next j
Tab2 = Tab2 & vbCrLf
Next
MsgBox "Tab2"
'fin tableau
Clt.Show
vshautbas2.Value = 0
Else
If Repajout = vbNo Then
Recap.txtrecap.Text = "Le Client : " & txtclt.Text & vbCrLf & _
"Sa référence " & ref.Text & vbCrLf & _
"Pour un profil : " & profilN.Text & vbCrLf
For i = 0 To nom_p.ListCount - 1
Recap.txtrecap.Text = Recap.txtrecap.Text & vbCrLf & _
"- " & nom_p.List(i) & " en " & trait.List(i) & " >> " & tot.List(i) & " m²."
Next
Recap.txtrecap.Text = Recap.txtrecap.Text & vbCrLf & vbCrLf & _
"Toutes les pièces font : " & Ttot.Text & " m²." & vbCrLf & _
"Avec un Ensemble est de : " & nbens.Text & vbCrLf & vbCrLf & _
"Le développé de toutes les pièces représente : " & txtens.Text & " m²."
Recap.Show
End If
End If
End Sub |
Le résultat
Cellule(0/0) Contenu: OK
Cellule(0/1) Contenu: OK
Cellule(0/2) Contenu: OK
Cellule(0/3) Contenu: OK
Cellule(0/4) Contenu: OK
Cellule(0/5) Contenu: OK
Cellule(0/6) Contenu: OK
Cellule(0/7) Contenu: OK
Cellule(0/ Contenu: OK
Cellule(1/0) Contenu: OK
Cellule(1/1) Contenu: OK
Cellule(1/2) Contenu: OK
Cellule(1/3) Contenu: OK
Cellule(1/4) Contenu: OK
Cellule(1/5) Contenu: OK
Cellule(1/6) Contenu: OK
Cellule(1/7) Contenu: OK
Cellule(1/ Contenu: OK
Ainsi de suite mais ça me prend du temps à rien non...et le msgbox n'affiche rien... |
|
|
|
|
|