viftro
Messages postés17Date d'inscriptionmercredi 7 septembre 2011StatutMembreDernière intervention 5 janvier 2017
-
Modifié par BunoCS le 20/01/2016 à 09:11
viftro
Messages postés17Date d'inscriptionmercredi 7 septembre 2011StatutMembreDernière intervention 5 janvier 2017
-
21 janv. 2016 à 20:34
Bonjour,
--j'ai besoin de votre aide svp
j'ai besoin de calculer des champs avant de les enregistrer sur ma base de donneés PrixTotal MontantTVA et TotalTTC le probleme et pas dans le calcul mais dans l'enregistrement ca me donne l'erreur de conversion de types de donneés
GoSub AFFECTATION
remplir_s
Dim total As Long
total = 0
For N = 0 To MSFlexGrid2.Rows - 1
total = total + Val(MSFlexGrid2.TextMatrix(N, 5))
Next N
Text9.Text = total
Text10 = (Text9 * (20 / 100))
Text11 = Val(Text9) + Val(Text10)
' remplir_t
'Command2_Click
'Unload Me
Exit Sub
AFFECTATION:
RA("NumFacture") = Trim(Text2)
RA("client") = Trim(Text3)
RA("Date") = Trim(Text4)
RA("imm") = Trim(Text5)
RA("Reference") = Trim(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1))
RA("Article") = Trim(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 2))
RA("Quantite") = Trim(Text1)
RA("PrixUnit") = Trim(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 3))
RA("PrixTotal") = Val(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 3)) * Val(Text1)
'C'est la ou ca me donne l'erreur
RA("TotalHT") = Trim(Text9)
RA("MontantTVA") = Trim(Text10)
RA("TotalTTC") = Trim(Text11)
RA.Update
'MsgBox "information bien enregistrer"
Return
nsu:
MsgBox err.Description
End Sub
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI
Whismeril
Messages postés18417Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 5 juin 2023624 20 janv. 2016 à 06:58
Bonjour, la dernière question que tu as posée, il y a 9 mois, n'a pas eu de reponse car tu n'as pas précisé la version de Vb, ou mieux posté ta question dans le forum correspondant.
Ce matin tu te réveilles, informe l'autre fil qu'il s'agit de Vb6 et reposes une question, où il manque encore cette info essentielle....
On peut dire que tu es un nostalgique. Les Gosub ... Return sont devenus obsolètes en même temps que le GWBASIC (depuis une trentaine d'années!)
A part ça, on ne voit pas comment est définie ta BDD.
Par exemple:
Text10 = (Text9 * (20 / 100))
Je suppose que Text9 et Text10 sont des champs texte du formulaire des saisie.
Il faudrait plutot écrire
Text10.text = Str(Val(Text9 ) * (20 / 100))
De même
RA("Quantite") = Trim(Text1)
On peut penser que le champ "Quantite" de la BDD est du type numérique. Or Trim est une fonction qui renvoie un texte. Donc on affecte une valeur texte à un champ numérique, ça ne marchera pas.
Je pense qu'il faut prendre l'habitude d'être plus rigoureux même si la syntaxe du VBA et assez permissive (ce qui en fait d'ailleurs sa faiblesse).