Resultat meme avec des 0
Résolu
Abd3l0u
Messages postés
21
Date d'inscription
Statut
Membre
Dernière intervention
-
Abd3l0u Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
Abd3l0u Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous,
Je travail sur un fichier en combinant Vba et Excel. Dans une plage de cellule excel j'aimerai mettre le resultat d'une multiplication de plusieurs cellules dont le resultat provient d'une macros.
j'aimerai avoir le resultat meme si une des cellules contient un 0.
exemple : 2x2x0=0 j'aimerai que sa m'affiche 4
J'espere que c'est assez clair. Merci par avance pour votre aide.
PS : desole pour les fautes et accent, je suis avec un clavier anglais.
Je travail sur un fichier en combinant Vba et Excel. Dans une plage de cellule excel j'aimerai mettre le resultat d'une multiplication de plusieurs cellules dont le resultat provient d'une macros.
j'aimerai avoir le resultat meme si une des cellules contient un 0.
exemple : 2x2x0=0 j'aimerai que sa m'affiche 4
J'espere que c'est assez clair. Merci par avance pour votre aide.
PS : desole pour les fautes et accent, je suis avec un clavier anglais.
A voir également:
- Resultat meme avec des 0
- Resultat foot - Télécharger - Vie quotidienne
- Lexer resultat - Télécharger - Sport
- Remettre a 0 un pc - Guide
- Numéro de téléphone excel 0 - Guide
- Qualité de signal parabole 0 - Forum TNT / Satellite / Réception
3 réponses
Essaies
=PRODUIT(SI(A2:B3<>0;A2:B3))
Formule matricielle à valider avec Ctrl+Maj+Entrée (elle se mettra alors automatiquement entre accolades)
Cdlmnt
=PRODUIT(SI(A2:B3<>0;A2:B3))
Formule matricielle à valider avec Ctrl+Maj+Entrée (elle se mettra alors automatiquement entre accolades)
Cdlmnt
Bonjour
Je ne sais pas si j'ai bien compris ton pb
Cdlmnt
Je ne sais pas si j'ai bien compris ton pb
Public Function ProdSansZero(plage As Range) Dim c As Range, p, ok As Boolean p = 1 ok = False For Each c In plage If c.Value <> 0 Then p = p * c.Value: ok = True Next c If ok Then ProdSansZero = p Else ProdSansZero = 0 End If End Function
Cdlmnt
Bonjour. Tu peux utiliser une fonction SI pour chaque cellule qui appliquera ou non la multiplication si différent de zéro. (car si tu multiplie un chiffre par zéro, excel te donnera zéro quoi qu'il arrive (logique)
Mon idée : le test logique est : Si la céllule est suppérieure à zéro, si vrai : [valeur de la cellule] ; si faux : 1 (je multipli le tout par 1 pour ne pas changer la veleur)
Ex : Les données sont dans les céllules de A1 à A10.
=SI(A1>0;A1;1)*SI(A2>0;A2;1)*SI(A3>0;A3;1)*...*SI(An>0;An;1)
Mon idée : le test logique est : Si la céllule est suppérieure à zéro, si vrai : [valeur de la cellule] ; si faux : 1 (je multipli le tout par 1 pour ne pas changer la veleur)
Ex : Les données sont dans les céllules de A1 à A10.
=SI(A1>0;A1;1)*SI(A2>0;A2;1)*SI(A3>0;A3;1)*...*SI(An>0;An;1)
Bonne journee