Div/0

Patdebisca Messages postés 33 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 15 octobre 2009 - 20 janv. 2008 à 21:00
Patdebisca Messages postés 33 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 15 octobre 2009 - 21 janv. 2008 à 23:44
Bonsoir a tous

Lorsque dans excell il y a une formule avec division par 0 la cellule a un message d'erreur....

J'aimerais savoir si il existe un moyen (vba, fonction, parametre..) pour que  si une formule utilise donc une division par 0 elle affiche ou rien ou 0. Ce n'est pas l'utilsation de la fonction ERR() dans une cellule qui m'interresse, mais un moyen valable pour toute la feuille ou tous le classeur, genre l'option afficher la valeur 0 ou non dans "outil .option . affichage"..

si y'a une idée...
merci...

7 réponses

us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
20 janv. 2008 à 22:40
peut-être cela :

=SI(ESTERREUR(B3/C3);0;B3/C3)

dans les cellules qui font les calculs...

Il n'y a pas, à ma connaissance d'option permettant de masquer les erreurs spécifiques... Pour l'ensemble d'une feuille déjà existante, il faut passer par VBA en listant chaque cellule pour repérer les erreurs. A priori, il n'y a pas d'autre solution.

Amicalement,
Us.
0
Patdebisca Messages postés 33 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 15 octobre 2009
20 janv. 2008 à 23:26
Et en VBA ?

Il n'y a pas qlque chose a trouver .......dans Private Sub Worksheet_Change par Exemple ?

une instruction testant les modif de cellule dans une feuille????
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
21 janv. 2008 à 11:02
Il n'y a pas de solution miracle pour ce genre d'erreur, du moins à ce que je sache...

À toutes les fois que tu fais une division (sous Excel, sous VBA,...) tu dois vérifier si la valeur est 0. En VB ou VBA, tu peux vérifier la valeur ou faire une gestion d'erreur. Sous Excel, tu préviens le coup avec un code comme te fournit us_30 ou comme ceci
SI(C3 0; 0; B3/C3)

C'est tout de même pas trop difficile à mettre en place...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
21 janv. 2008 à 11:08
Si tu ne veux pas encadrer ton éventuelle erreur, il te reste une autre solution qui n'est que de la bidouille, mais comme à priori, tu ne cherches qu'à désactiver l'affichage.

Tu mets une mise en forme conditionnelle : Menu\Mise en forme conditionnelle sur toutes tes cellules.

Avec comme condition : "La formule est" et "=ESTERREUR(A1)=VRAI", et tu mets juste la police en blanc.
Ensuite, copier cette formule sur toutes tes cellules.

A chaque fois que tu auras une erreur sur tes cellules, elles apparaitront en blanc sur blanc et ne seront donc plus "visibles".

Mais le plus propre, c'est quand même d'encadrer sa formule avec un Si(ESTERREUR ...), parce qu'on sait qu'on peut obtenir des erreurs en divisant par 0. On prévoit les erreurs avant ^^

Molenn
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Patdebisca Messages postés 33 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 15 octobre 2009
21 janv. 2008 à 14:47
Merci des réponses

Molenn ta ruse est sympa ....mais pour ce que je souhaite faire je vais etre obligé de  d'encadrer mais formule avec si{esterrer.....}et reprendre toutes mes cellules......Snif!

......
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
21 janv. 2008 à 21:25
Bonsoir,

Mais est-ce qu'il y en a vraiment beaucoup de formules ou juste qu'un peu... sinon, on peut tenter de bricoler une petite macro pour faire le remplacement automatique en VBA... car en définitive, il suffit de repérer les cellules qui ont une formule, de l'extraire donc, et de la remplacer par la forme complétée comme indiquée ci-dessus.

Amicalement,
Us.
0
Patdebisca Messages postés 33 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 15 octobre 2009
21 janv. 2008 à 23:44
L'idee est interressante.....

Je vais tester sa mise en place.......   je ne suis pas le Mozart du VBA ...mais je suis persévérant....

@+
0
Rejoignez-nous