Division

momo78 -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour à tous,

j'ai un petit soucis j'essaye de faire une division et mon diviseur=0, lorsque je compile mon programme j'ai comme message "erreur d'éxécution '11' division par zéro"

merci

3 réponses

choubaka Messages postés 39986 Date d'inscription   Statut Modérateur Dernière intervention   2 106
 
bonjour

C'est une erreur logique, tu dois faire le test avant sur ton diviseur pour qu'il ne soit jamais égal à zéro.
0
momo78
 
comment proceder dans ce cas
0
cchristian Messages postés 928 Statut Membre 131
 
Bonjour,

Fais un test avant la division:

Si diviseur = 0

et force à 1 la variable diviseur si elle est égale à 0:

alors diviseur = 1

0
momo78
 
voici mon programme
dim fon
dim va
fon=18
va=18
Sub calcul
if fon-va<>0, then

resul=15/(fon-va)

end if
end sub
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
bonjour

et en l'écrivant comme ça ?
Sub calcul()
dim fon
dim va
  fon=18
  va=18
  if fon-va<>0, then
    resul=15/(fon-va)
  end if
end sub

bonne suite
0
momo78
 
ca n'affiche rien
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
re
cette procedure n'affiche effectivement rien, puisqu'aucun afficghage n'est programmé
elle se borne a calculer resul, qui au passage n'a pas été déclaré
tu as deux possibilités
1. ta procedure calcul affiche résul,
tu ajoutes ceci aprèrs le calcul de resul (en changeant le nom de la cellule)
Range("A1").value = resul
2. ta procedure renvoie "resul" dans la feuille, dans ce cas, calcul doit etre declarée comme fonction
Le plus simple est que tu expliques ce que tu attends exactement de cette procedure
0