Excel plage dynamique formule

rafi382 -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je cherche à savoir comment introduire une plage dynamique du style DECALER(Feuil1!$A$1;1;0;NBVAL($A:$A)-1) dans une formule.

Voici ma formule:
=SOMMEPROD(('Report month1;yearn'!$A$43:$A$3000='Ref table'!$H$12)*('Report month1;yearn'!$X$43:$X$3000='Ref table'!$J$4)*('Report month1;yearn'!$F$43:$F$3000))

Et mon problème, c'est que j'inclus 3000 cellules à chaque fois uniquement pour être sûr de prendre en compte toutes mes cellules pleines. Cela crée un message d'erreur et ça fait que je ne peut pas "automatiser" le tableau.

Quelqu'un sait-il comment faire ?
A voir également:

3 réponses

Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Le plus simple est d'utiliser le DECALER pour définir une plage nommée "dynamique" et d'utiliser ce nom dans les formules.

Par contre nous ne sommes pas devins. Si tu veux une réponse à propos d'un message d'erreur, il faut préciser lequel !
0
rafi382
 
Merci Patrice. Mon message d'erreur est juste "le petit coin en vert" car j'intègre dans la formule des cellules vides (qui sont toutes celles prise en trop "par précaution").
J'ai défini une plage avec la fonction "décaler" mais lorsque je l'intègre dans la formule comme ceci:
=SOMMEPROD((clients='Ref table'!$H$4)*('Report month1;yearn'!$X$43:$X$3000='Ref table'!$J$4)*('Report month1;yearn'!$F$43:$F$3000))
la cellule affiche #N/A
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour
(Re patrice)
.. ou peut être simplement compléter la formule avec un argument supplémentaire dans SOMMEPROD, du genre
('Report month1;yearn'!$F$43:$F$3000<>"")
mais on n'en sait pas assez sur les données pour être plus précis
crdlmnt

0
rafi382
 
oui j'avais pas pensé a ça je vais essayer merci vaucluse
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

Mon message d'erreur est juste "le petit coin en vert"
Ce n'est pas une erreur, c'est juste un message d'alerte.
Par contre sommeprod() étant une formule matricielle (donc gourmande), tu as tout intérêt à utiliser un nom dynamique.

Ca dépend de la version excel.
Sur 2010 : ruban 'Formules / Définir un nom'
Là tu saisis ton nom et tu mets ta formule dans 'Fait référence à'
Ensuite tu remplaces ta plage par son nom dans l'autre formule.
Mais vu que tu commences en A43, la formule du nom dynamique dépendra de ce qu'il y a au-dessus. Telle que tu l'as écrit A1:A42 ne doit contenir qu'une seule cellule remplie.
Comme dit patrice, nous ne somme pas devin. Donc sans fichier joint tu ne peux qu'avoir des réponse approximatives.

eric
0
rafi382
 
http://cjoint.com/?3CnmzQToyoR

Voila le lien, je ne peux malheureusement pas transmettre le classeur original mais voilà comment ça se présente.
Dans sales (total) j'ai une formule du type:
=SOMMEPROD(('Report month1;yearn'!$A$43:$A$3000='Ref table'!$H$9)*('Report month1;yearn'!$X$43:$X$3000='Ref table'!$J$4)*('Report month1;yearn'!$F$43:$F$3000))
sachant que selon le mois, comme je l'explique dans le fichier joint, le nombre de colonne du rapport varie donc c'est pour cette raison que je mets 3000.
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Tu plaisantes ?
Explique-nous comment saisir une formule sur une image ?
eric
0
rafi382
 
Non mais je n'ai pas l'autorisation de diffuser un document interne Eric. Mais c'est juste le principe que je recherche, de comment faire ma déclaration pour m'adapter aux variations du nombre de ligne des documents dans lesquels je vais chercher mes données.
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

Il faut anonymiser le fichier et le réduire à l'essentiel pour ton problème.
Enfin c'est toi qui voit...
eric
0