Bonjour le Forum
Je viens à vous pour une compréhension du signe + (addition) en code VBA.
J'ai modifié un code calculant des surfaces, pour calculer la surface d'un trapèze avec la formule : (Grande Base + Petite Base) * Hauteur /2. Pour ce faire j'utilise les lignes suivantes (pour exemple de mon souci)
Grande base = 9 cm - Petite base = 7 cm - Hauteur = 10 cm ce qui donne une surface réelle de 80 cm²
Ligne additionnant les bases (résultat Faux)
Mon problème est dans cette portion de calcul : normalement je devrais obtenir 16 cm hors j'obtiens 79 cm
Add = Format(GBase + PBase)
MsgBox "Add " & Add Résultat = 7 & 9 soit 79 et non 9+7 soit 16
Ligne additionnant les bases (résultat Bon)
Pour obtenir le bon résultat je suis obligé de passer par cette formule
AddMulti = Format(GBase * 2 + PBase * 2) / 2
MsgBox "addMulti " & AddMulti Résultat = 9+7 soit 16
Calcul de la surface
Surf = Format((GBase * 2 + PBase * 2) / 2 * Hauteur / 2)
MsgBox " Surface " & Surf
Quelqu'un pourrait-il m'expliquer le phénomène du signe + qui ne fonctionne pas entre GBase et PBase et qui fonctionne entre multiplications ?
Je joins le bout de fichier constitué.
En vous remerciant d'avance.
Je viens à vous pour une compréhension du signe + (addition) en code VBA.
J'ai modifié un code calculant des surfaces, pour calculer la surface d'un trapèze avec la formule : (Grande Base + Petite Base) * Hauteur /2. Pour ce faire j'utilise les lignes suivantes (pour exemple de mon souci)
Grande base = 9 cm - Petite base = 7 cm - Hauteur = 10 cm ce qui donne une surface réelle de 80 cm²
Ligne additionnant les bases (résultat Faux)
Mon problème est dans cette portion de calcul : normalement je devrais obtenir 16 cm hors j'obtiens 79 cm
Add = Format(GBase + PBase)
MsgBox "Add " & Add Résultat = 7 & 9 soit 79 et non 9+7 soit 16
Ligne additionnant les bases (résultat Bon)
Pour obtenir le bon résultat je suis obligé de passer par cette formule
AddMulti = Format(GBase * 2 + PBase * 2) / 2
MsgBox "addMulti " & AddMulti Résultat = 9+7 soit 16
Calcul de la surface
Surf = Format((GBase * 2 + PBase * 2) / 2 * Hauteur / 2)
MsgBox " Surface " & Surf
Quelqu'un pourrait-il m'expliquer le phénomène du signe + qui ne fonctionne pas entre GBase et PBase et qui fonctionne entre multiplications ?
Je joins le bout de fichier constitué.
En vous remerciant d'avance.