Bonjour,
Je viens faire appel aux professionnels de la formule Excel, car j'ai une problématique qui dépasse mon niveau (que je pourrais résoudre en VBA, mais pour le coup, une formule m'intéresserait plus).
Grosso modo, j'ai un tableau d'une quarantaine de lignes, contenant diverses informations, et il faut que je réalise plusieurs formules pour calculer des quantités pour diverses éléments en fonction des renseignements présents dans le tableau.
Je vais vous donner un exemple basé sur 3 colonnes (mais le tableau en contient plus, certaines formules se baseront sur plus de 3 colonnes ou pas forcément les mêmes, mais je me débrouillerais pour adapter) :
la colonne A contient des "destinations"
la colonne B contient des largeurs
la colonne C contient des "types"
Si sur une ligne, la colonne destination contient le terme "magasin", et la colonne C un des trois types "A", "B" ou "C" (parmi d'autres valeurs possibles ou même aucune valeur du tout, la cellule peut être vide), il faut que je prenne la largeur présente sur cette ligne, et que je la divise par une valeur précise (avec un arrondi.sup au passage).
Ca je sais faire en imbriquant du SI / ET / OU / ARRONDI.SUP.
La où cela se complique, c'est qu'il faudrait que dans une seule formule, j'arrive à faire ce calcul pour mes 40 lignes, et faire la somme des résultats trouvés.
Et la cerise sur le gâteau, je ne sais pas si cela peut jouer, mais 90% de mes valeurs sont déjà des résultats de formules.
Alors j'ai bien tenté des trucs dans ce genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part {=SOMME(SI(ET(A3:A42="magasin";OU(C3:C42="A";C3:C42="B";C3:C42="C"));ARRONDI.SUP((B3:B42)/601;0);0))}
J'ai essayé également avec un seul terme sur ma colonne "type" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part {=SOMME(SI(ET(A3:A42="magasin";C3:C42="A");ARRONDI.SUP((B3:B42)/500;0);0))}
Mais dans tous les cas, cela me retourne 0, que des données correspondes ou non. Idem si je rajoute des $ au niveau des plages.
J'ai l'impression que la formule matricielle n'aime pas les ET/OU ?
Pour que cela me retourne un résultat, il faut que je simplifie jusque là :
C'est à dire que j'ai enlevé complètement la condition sur mon type (donc plus de OU ni de ET), mais cela ne correspond plus à mon besoin...
Code : Sélectionner tout - Visualiser dans une fenêtre à part {=SOMME(SI(A3:A42="magasin";ARRONDI.SUP((B3:B42)/500;0);0))}
Du coup, ce que je cherche à faire est-il possible et si oui, pourriez-vous m'aiguiller sur l'endroit où je m'y prends mal, ou dois-je forcément soit me rabattre sur une colonne intermédiaire pour calculer chaque ligne avant de faire la somme, soit passer par du VBA ?
Cordialement,
Partager