dX = X2 - X1
dY = Y2 - Y1
'Formule pour connaître le cadrant dans lequel se trouve les coordonnées
If dX >= 0 And dY >= 0 Then
aTan1 = Atn(dX / dY)
ElseIf dX >= 0 And dY < 0 Or dX < 0 And dY < 0 Then
aTan1 = Atn(dX / dY) + frmCalcul.Pi
ElseIf dX < 0 And dY >= 0 Then
aTan1 = Atn(dX / dY) + (2 * frmCalcul.Pi)
End If
aTan2 = aTan1 * frmCalcul.dbRadian 'Convertir les Radians en Degrés décimaux
aTan2 = 220,8226
Jusqu'ici tout va tres bien... Sauf quand j'essais de faire la formule dans Excel : aTan1 = Atn(dX / dY) + frmCalcul.Pi on dirais que ca fonctionne pas.... J'arrive au résultat 75,9821
La formule est la suivante sous Excel
=SI(ET(K$10<0;K11<0);ATAN((K$10/K$11)+3,14159265358979);"")
Où
K10 = dX
K11 = dY
J'ai comme résultat 1,3261
Ce nombre en radian donne en degré décimal: 75,9821
Quelqu'un peut voir où est mon erreur dans Excel....
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 16 juil. 2007 à 20:47
Reste Zen, Jacques, tu viens presque de l'incendier dans l'autre post,ici tout est correct.
Effectivement ce n'est pas du VBA, ni du VB, mais ténat donner qu'il n'y a pas de rubrique spécifique aux formules d'excel, la rubrique VBA reste tout de même la mieux adaptée.
Sinon il y a aussi le forum de Mortalino.
Le lien était dans ma signature, mais comme les signatures merdent tant qu'elles peuvent ici, il n'apparait plus. Mais si quelqu'un l'à qu'il le donne.
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 16 juil. 2007 à 23:26
Bonsoir,
Ben... si tu veux coder en formule Excel, la partie des formules en VB qui tu présentes il y a une erreur évidente (ou alors tu n'écris pas tout...)
ton code VB
'Formule pour connaître le cadrant dans lequel se trouve les coordonnées
If dX >= 0 And dY >= 0 Then
aTan1 = Atn(dX / dY)
ElseIf dX >= 0 And dY < 0 Or dX < 0 And dY < 0 Then
aTan1 = Atn(dX / dY) + frmCalcul.Pi
ElseIf dX < 0 And dY >= 0 Then 'cette dernière condition est-elle nécessaire ?
aTan1 = Atn(dX / dY) + (2 * frmCalcul.Pi)
End If
Ta formule Excel
=SI(ET(K$10<0;K11<0);ATAN((K$10/K$11)+3,14159265358979);"")
Cette formule correspond à la seconde condition : dX >= 0 And dY < 0 Or dX < 0 And dY < 0 Then
d'après le calcul du résultat !! Pourquoi on ne retrouve pas ces conditions ?