Ecrire un code

salinam Messages postés 3 Date d'inscription dimanche 26 février 2017 Statut Membre Dernière intervention 6 mars 2017 - 26 févr. 2017 à 16:07
 salinam - 28 févr. 2017 à 13:51
bonjour

si quelqu'un peut m'aider à résoudre petit code en vb 2010:
j'ai trois DataGridView:

1er contient les produits
codeProduit total HT
11111 20
22222 10
total HT 30

2ème contient les charges
FRET TaxesSéjour
5 10

3ème contient la répartition des charges pour chaque produit :

FRET TaxesSéjour (formule de calcule est : (5 /30)*(20)=3.33 ,
(10/30)*(20)=6.66
3.33 6.66
comment effectuer la même opération pour le 2ème produit

merci d'avance

4 réponses

vb95 Messages postés 3472 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 13 avril 2024 169
Modifié par vb95 le 26/02/2017 à 20:51
Bonjour
Primo : on s'en doute que tu veux écrire un code : donc choisis un titre plus parlant techniquement .
Deuxièmement : même en relisant plusieurs fois ton post on ne comprend nullement ce que tu veux faire surtout au niveau de la formule et de ton soit disant deuxième produit
De plus lorsque tu parles de deuxième produit si tu as su le faire pour le "premier" qu'est-ce qui coince pour le second ?
Donnes nous les précisions et aboutissants si tu veux avoir une réponse car là ce n'est pas évident
De plus vu que c'est ton premier message quelques conseils : http://codes-sources.commentcamarche.net/contents/11-charte-de-commentcamarche-net-conseils-d-ecriture

La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. 
0
salinam Messages postés 3 Date d'inscription dimanche 26 février 2017 Statut Membre Dernière intervention 6 mars 2017
27 févr. 2017 à 09:57
bonjour

peut être j'avais mal poser ma question, je suis entrain de développer un petit programme d'un bon d'entrées produits en stock vb 2010.
voici le code qui me permettra de partitionner les charges affichés sur le DGV (TableauCoise) pour chaque item des produits affichés sur le DGV (DetFactureAchat). La répartition des charges serons affichés sur le DGV (DGVCharges). le code ci-dessous, me donne le resultat pour le premier item du DGV (DetFactureAchat). Ma question est comment répéter pour les n items

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click

For i = 2 To TableauCroise.Columns.Count - 1
For colc = 0 To (DGVCharges.Columns.Count - 1)

If TableauCroise.Columns(i).HeaderCell.Value = DGVCharges.Columns(colc).HeaderCell.Value Then

DGVCharges.Item(colc, 0).Value = (Val((TableauCroise.Item(i, 0).Value)) / (Val(THT.Text)) * (Val(DetFactureAchat.Item(5, 0).Value)))

End If
Next colc
Next i
Calcule()
End Sub

je vous remercie d'avance
0
vb95 Messages postés 3472 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 13 avril 2024 169
27 févr. 2017 à 23:47
bonsoir !
C'est toujours autant incompréhensible
Résumons ( DGV = DataGridView pour la suite)
1) tu as un DGV Produits avec le numéro du produit et le total HT ( hors taxe je suppose)
2) tu as un DGV de charges avec 2 colonnes ( FRET et Taxes séjour) . Il n'y a qu'une seule ligne dans cette DGV ?
3) La troisième DGV contiendra la répartition des charges pour chaque produit . Quelle est la formule de calcul de cette répartition

C'est quoi
Val(DetFactureAchat.Item(5, 0).Value))
?
C'est quoi
Val(THT.Text)
?
0
bonsoir

j'ai un DGV de produits nommé "DetFactureAchat" avec 0 to 5 colonnes et 0 to 1 lignes "(DetFactureAchat.Item(5, 0).Value)"

(DetFactureAchat.Item(5,0).Value) : c'est la 5ème colonne de la ligne 0 du DGV. représente le total de la colonne 3 (nommée Qté) * la colonne 4 (nommée PU) de chaque ligne (Qté * PU)

pour Val(THT.Text) : est un Label nommé THT , il reçoit la somme de la colonne 5 TO 1 ligne du DGV (DetFactureAchat) .

la formule de calcul de cette répartition est :
DGVCharges.Item(colc, 0).Value = (Val((TableauCroise.Item(i, 0).Value)) / (Val(THT.Text)) * (Val(DetFactureAchat.Item(5, 0).Value))) . Ma question c'est de répéter cette formule pour la 2ème ligne.

pour la première ligne , elle fonctionne.

merci
0
Rejoignez-nous