Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Formule Décaler, Colonnes et Accolades...

Guillaume83

XLDnaute Nouveau
Bonjour à tous,

Voici mon problème, et je voulais savoir si ca vous est déjà arrivé...

J'ai inséré en P123 une formule avec la fonction DECALER du type:

Code:
=SOMMEPROD((DECALER(INDIRECT("Feuille1!"&ADRESSE(EQUIV($F123;$F:$F;0);16));0;0;9))*(DECALER(INDIRECT("Feuille2!"&ADRESSE(EQUIV($F123;$F:$F;0);14));0;0;9)))

Ici, pas de problèmes... La formule marche.

Mais si je veux tirer la formule en N123, j'ai besoin de l'ajuster et de transformer le 16 en 17. Vous me direz que je pourrais utiliser la fonction COLONNE() pour que l'ajustement soit automatique. Et je l'ai fait!

Mais c'est là que commencent les soucis, car en intégrant COLONNE(), la formule ne marche plus. En la passant en revue avec le vérificateur de formules, je me suis apercu que des accolades apparaissaient autour du résultat de la 1è fonction INDIRECT, et ainsi foutaient en l'air ma formule.

Une idée pour y remédier?

Cordialement,
Guillaume
 

Guillaume83

XLDnaute Nouveau
Re : Formule Décaler, Colonnes et Accolades...

Bon,

Pour remédier au problème, ca va. Vu que j'aime avoir de jolis fichiers, j'ai toujours la ligne 1 que je laisse vide pour créer ensuite un titre en bandeau en ligne 2.

Du coup je me sers de la 1è ligne comme base à la fonction NB.VIDE que j'ai intégrée pour calculer le numéro de colonne. Ce n'est pas propre, mais je n'ai pas trouvé mieux.

Toutefois, si quelqu'un a une idée de pourquoi la fonction COLONNE me foire ma formule, je suis preneur!

Bon week end à tous,

Guillaume
 

CISCO

XLDnaute Barbatruc
Re : Formule Décaler, Colonnes et Accolades...

Bonsoir

J'ai déjà constaté qu'il y avait parfois des problèmes avec les fonctions COLONNE ou LIGNE. J'ai contourné cela en utilisant COLONNES ou LIGNES.

@ plus
 

Guillaume83

XLDnaute Nouveau
Re : Formule Décaler, Colonnes et Accolades...

Je viens de tester, et ca marche aussi. Je pense remplacer mon NB.VIDE par COLONNES. Mais je dois avouer que ce probleme m'agace un peu.
Je vais continuer d etravailler dessus ce week end.
 

ERIC S

XLDnaute Barbatruc
Re : Formule Décaler, Colonnes et Accolades...

re

une question : es-tu sûr des résultats que tu dois obtenir ?
que dois-tu avoir par exemple pour plateforme 4 en janv, fev, ... mai
car si on tire ta formule vers janvier on n'a pas le même résutat que ton calcul vert
????????????
 

ERIC S

XLDnaute Barbatruc
Re : Formule Décaler, Colonnes et Accolades...

re

Code:
=SOMMEPROD(DECALER(Couts!$B$3;EQUIV($B7;Couts!$B$4:$B$13;0);EQUIV(Total!G$3;Couts!$C$3:$N$3;0);NB.SI(Couts!$B$4:$B$13;4));DECALER(Utilisateurs!$B$3;EQUIV($B7;Utilisateurs!$B$4:$B$13;0);EQUIV(Total!G$3;Utilisateurs!$C$3:$N$3;0);NB.SI(Utilisateurs!$B$4:$B$13;4)))

edit

Code:
=SOMMEPROD( (Couts!$C$4:$N$13)*(Couts!$B$4:$B$13=Total!$B7  )*(Couts!$C$3:$N$3=Total!G$3)*(Utilisateurs!$C$4:$N$13)*(Utilisateurs!$B$4:$B$13=Total!$B7  )*(Utilisateurs!$C$3:$N$3=Total!G$3))
 
Dernière édition:

Victor21

XLDnaute Barbatruc
Re : Formule Décaler, Colonnes et Accolades...

Bonjour, Guillaume, lézamis.

De deux choses l'une :
-Soit vous explorez par goût les possibilités d'Excel, et le résultat n'est pas la priorité, et ma réponse n'a pas lieu d'être. N'allez donc pas plus loin
- Soit vous souhaitez aller au plus simple pour obtenir les résultats rapidement. Si c'est le cas, voyez la proposition en pj qui met en oeuvre un tableau supplémentaire, et des formules (cellules jaunes) basiques.
=Couts!C4*Utilisateurs!C4
et
=SOMME.SI($B$4:$B$13;$B15;C$4:C$13)
à recopier sur les zones.
 

Pièces jointes

  • Guillaume.xlsx
    15.7 KB · Affichages: 18
  • Guillaume.xlsx
    15.7 KB · Affichages: 20

GerardCalc

XLDnaute Occasionnel
Re : Formule Décaler, Colonnes et Accolades...

Bonsoir,

Juste une précision sur le pourquoi du COLONNE() qui ne fonctionne pas.

On n'utilise pas la fonction COLONNE() dans une formule matricielle avec DECALER.
SOMMEPROD fait que la fonction COLONNE renvoie une matrice (d'une valeur mais une matrice quand même),
ce qui fait que INDIRECT ne peut pas utiliser le résultat de DECALER.

On pourrait tricher en utilisant SOMME par exemple. C'est à dire remplacer COLONNE() par SOMME(COLONNE()). (ou MAX, ou une autre fonction qui renverra un scalaire à partir de la matrice LIGNE).

Mais le mieux est d'utiliser COLONNES.

Ceci vaut aussi pour la fonction LIGNE.

A+
 

CISCO

XLDnaute Barbatruc
Re : Formule Décaler, Colonnes et Accolades...

Bonsoir

Pour le fun, Cf. la formule dans Total!C4, pas si compliquée que ça
Code:
SOMMEPROD((Couts!$B$4:$B$13=Total!$B4)*(Utilisateurs!$B$4:$B$13=Total!$B4)*Couts!C$4:C$13*Utilisateurs!C$4:C$13)

@ plus
 

Pièces jointes

  • Guillaume.xlsx
    12 KB · Affichages: 26
  • Guillaume.xlsx
    12 KB · Affichages: 26

gosselien

XLDnaute Barbatruc
Re : Formule Décaler, Colonnes et Accolades...

Bonjour à tous,

avec une autre présentation, ça me parait plus simple d'obtenir les totaux

P.
 

Pièces jointes

  • Guillaume.xlsx
    16.5 KB · Affichages: 23
  • Guillaume.xlsx
    16.5 KB · Affichages: 26

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…