SOMME SI avec condition à la fois en ligne et en colonne

Bonjour à tous

Je recherche une formule ou une macro me permettant d’insérer une formule dans plusieurs onglets de suivi par semaine.

La base est constituée de plusieurs lignes et plusieurs colonnes.

J'arrive à le faire manuellement en utilisant un =SOMME.SI(Base!$L:$L;'S1'!C$5;Base!$ZK:$ZK), mais à chaque onglet (semaine 1 à 52) il faut que je change la colonne de référence manuellement.

J'aimerais automatiser cela avec une formule ou une macro qui irais chercher les données en fonction de intervenant 1,intervenant 2,intervenant 3 ou intervenant 4 dans Base!L:L et les montants de production dans l'onglet base colonne (ZB:ALA) en fonction d'une date en ZB1:ALA1 par rapport au date calculé dans Modèle en W, de manière à ce que quand je lance la macro création d'onglet les formules s'adapte à chaque semaine.

Est ce possible ?

Voir fichier joint pour l'exemple (tronqué donc les colonnes ZB: ALA deviennent NB:ZA

Merci pour vos retours.

50test.xlsm (449.03 Ko)

Bonjour,

=SOMME.SI(Base!$L:$L;'S1'!C$5;Base!$ZK:$ZK)

veut dire :

SOMME les valeurs de la colonne ZK de la feuille Base

SI les valeurs de la colonne L de la feuille Base sont égales au critère de la cellule C$5 de la feuille S1

mais je ne vois pas de feuille "S1"

puis je ne vois pas de cellule avec une formule de ce type.

En somme j'ai du mal à comprendre

Bon S1 c'est tout bonnement la feuille "1", le S est en trop !

C$5 de la feuille 1 = intervenant1

Donc pour chaque valeur = à intervenant1 dans la colonne L de la feuille Base il faut additionner les valeurs correspondantes en colonne ZK. ou NB car le fichier est tronqué...

Mais cette formule doit être où ?

Vraiment je ne comprend pas... Désolé.

@ bientôt

LouReeD

Bonjour LouReeD

=SOMME.SI(Base!$L:$L;'S1'!C$5;Base!$ZK:$ZK)

veut dire :

SOMME les valeurs de la colonne ZK de la feuille Base

SI les valeurs de la colonne L de la feuille Base sont égales au critère de la cellule C$5 de la feuille S1

mais je ne vois pas de feuille "S1"

puis je ne vois pas de cellule avec une formule de ce type.

En effet La feuille S1 est remplacée par 1 pour intégrer la formule de date dans l'onglet Modèle colonne W

La formule est supprimée, car je ne souhaite pas le faire manuellement dans les 52 onglets

En somme j'ai du mal à comprendre

Bon S1 c'est tout bonnement la feuille "1", le S est en trop !

C$5 de la feuille 1 = intervenant1

En effet

Donc pour chaque valeur = à intervenant1 dans la colonne L de la feuille Base il faut additionner les valeurs correspondantes en colonne ZK. ou NB car le fichier est tronqué...

Mais cette formule doit être où ?

Cette formule doit être dans l'onglet Modèle en C7, C10, C13, C19 puis en D en E etc...

Vraiment je ne comprend pas... Désolé.

@ bientôt

LouReeD

[/quote]

A bientôt et merci d'avance pour l'aide apporté.

Bonjour

Voir avec INDIRECT mais tu gagnerais à mettre 1, 2 etc et à utiliser un format nombre pour afficher S1, S2 car sinon il faut transformer chaque titre de colonne dans la formule...

Bonsoir,

si j'ai bien compris, formule en C7 de la feuille modèle :

=SOMME.SI(Base!L:L;C$5;INDIRECT("Base!L1C"&(LIGNE()-7)/3+366+(($C$1-1)*5)&":L100C"&(LIGNE()-7)/3+366+(($C$1-1)*5);FAUX))où LIGNE()-7)/3+366+(($C$1-1)*5 permet de trouver la colonne 1 de la série de 5 de la semaine 1 (valeur en C1, mais l'année n'est pas prise en compte...) car il y a 5 colonnes par zone, donc lundi, mardi, mercredi, jeudi et vendredi je suppose.

366 car NB = 366 ième colonne de la feuille Base.

+(($C$1-1)*5 permet de décaler de 5 colonnes si semaine 2, etc...

Il doit y avoir plus simple, non ?

Mais surtout, ai-je compris ?

Le fichier :

54test.xlsm (432.65 Ko)

@ bientôt

LouReeD

Bonsoir LouReed

Oui vous avez bien compris.

La première colonne en S1 est la somme des cinq suivantes qui représente le détail de la semaine du lundi au vendredi.

Si il à plus simple je suis preneur.

Je test votre formule demain et je vous fais un retour

Encore merci pour votre aide.

Pierre0106

A bientôt

LouReeD a écrit :

Bonsoir,

si j'ai bien compris, formule en C7 de la feuille modèle :

=SOMME.SI(Base!L:L;C$5;INDIRECT("Base!L1C"&(LIGNE()-7)/3+366+(($C$1-1)*5)&":L100C"&(LIGNE()-7)/3+366+(($C$1-1)*5);FAUX))où LIGNE()-7)/3+366+(($C$1-1)*5 permet de trouver la colonne 1 de la série de 5 de la semaine 1 (valeur en C1, mais l'année n'est pas prise en compte...) car il y a 5 colonnes par zone, donc lundi, mardi, mercredi, jeudi et vendredi je suppose.

366 car NB = 366 ième colonne de la feuille Base.

+(($C$1-1)*5 permet de décaler de 5 colonnes si semaine 2, etc...

Il doit y avoir plus simple, non ?

Mais surtout, ai-je compris ?

Le fichier :

@ bientôt

LouReeD

Bonsoir

Une fois la formule adaptée à mon fichier d'origine elle fonctionne.

Seul problème sur une base de 300 lignes ça fonctionne nickel, mais sur une base de 4000 lignes ça ne calcul plus, ça reste à 0%.

Une idée pour optimiser le calcul ?

A bientôt

Pierre0106

Rechercher des sujets similaires à "somme condition fois ligne colonne"