Nommer cellule dynamique

Bonjour,

J'ai fait un fichier excel où une page principale (A) va chercher des infos dans une page de base de données (B)

la page B est alimentée regulierement, il y a des insertions de lignes, des ajouts de données, etc...

Dans cette base de données j'avais nommé plusieurs cellules pour les utilisez dans la page A dans des formules.

Dans la théorie cela me permettait de conserver une cellule en mouvement dans ma formule.

Or, ma cellule nommé en page B ne se déplace pas avec les modifications...

Mes formules deviennent donc fausse...

Pouvez vous m'aider la dessus svp?

merci d'avance pour votre aide

PS: la page B est alimentée par liaison avec un autre classeur

8fichier1.xlsx (65.98 Ko)
8fichier2.xlsx (132.59 Ko)

Voici une formule dynamique de plage variable

=DECALER(data!$K$2;;;NB.SI(data!$K:$K;"><")-1)

Onglet data

Colonne K

Données à partir de la ligne 2

Hello Steelson,

Merci pour ton retour, mais cela ne fonctionne pas vraiment pour ce que je souhaite faire

Le probleme est qu'il peut y avoir des ajouts et suppression de ligne

Par éxemple si j ai une colonne avec plusieurs ventes sur le mois et à la fin le total, je souhaites avoir ma case total reste le total dans ma formule meme si on a ajouté de nouvelles lignes pour de nouvelles ventes

le probleme c'est qu'ici je ne vois plus apparaitre le total puisque décalé

Suis-je assez explicite?

je n'arrive pas à ouvrir ton fichier exemple ....

@ whereisbryan : whereisthefile ?

Bonjour,

C'est bizarre ; j'ai essayé de reproduire le même bug mais je n'y arrive pas

De mon coté quand je supprime des lignes ou quand j'ajoute des lignes

les formules fonctionnent toujours.....

Et ceci avec des celulles nommées ou non.

( Sauf si biensur les lignes supprimées contenaient les cellules nommées lol )

un fichier test ?

De mon coté quand je supprime des lignes ou quand j'ajoute des lignes

les formules fonctionnent toujours.....

Xmenpl

tu me rassures !

Malheureusement je ne peux pas fournir de fichier mais ce qui est bizarre c'est que ma case nomée au depart en W120 reste en W120 meme apres plusieurs lignes supprimées... elle devrait être en W115

biensur sur le classeurs où je vais chercher les infos ma case nomée est bien en W115 mais sur la feuille où j'ai copié la liaison toujours en W120

je suis en train d'essayer autre chose par VBA afin d'éviter le probleme...

merci pour votre aide

bonjour

pourarriver a sommer tu peux eventuellemt agir ainsi

1) tu nommes ta cel

2) dans ta formule tu joues du DECALER

=(somme(decaler( le nom, equiv( lenom, la colonne du nom; 0);;nombre de lignes voulues ) )

la plage a sommer s'en trouve mobile ,et constante

cordialement

Si tu avais pris une peu de temps pour faire un fichier simplifié et anonymisé je suis sûr que tu aurais eu une réponse pertinente sans passer par VBA. paragraphe 6 ici https://forum.excel-pratique.com/viewtopic.php?f=2&t=13

Bonne chance pour la suite !

Merci tulipe_4 pour ton retour,

mais le probleme c'est que le decalage se fait regulierement et de manière aléatoire...

Decaler m'oblige à garder un decallage constant

Si tu avais pris une peu de temps pour faire un fichier simplifié et anonymisé je suis sûr que tu aurais eu une réponse pertinente sans passer par VBA. paragraphe 6 ici https://forum.excel-pratique.com/viewtopic.php?f=2&t=13

Bonne chance pour la suite !

d'autant plus qu'un simple sommeprod pourrait faire la balle

Merci tulipe_4 pour ton retour,

mais le probleme c'est que le decalage se fait regulierement et de manière aléatoire...

Decaler m'oblige à garder un decallage constant

fait une maquette de 20/30 lignes

Malheureusement je ne peux pas fournir de fichier mais ce qui est bizarre c'est que ma case nomée au depart en W120 reste en W120 meme apres plusieurs lignes supprimées... elle devrait être en W115

biensur sur le classeurs où je vais chercher les infos ma case nomée est bien en W115 mais sur la feuille où j'ai copié la liaison toujours en W120

je suis en train d'essayer autre chose par VBA afin d'éviter le probleme...

merci pour votre aide

J'en déduis que L'onglet "B" est un "copie collage spécial avec liaison" d'un autre fichier…...

Ce qui va engendrer des problèmes car si on supprime des lignes dans le fichier original alors

dans la copie avec liaison certaines ligne vont apparaître avec : #REF!

Car effectivement dans ce cas les cellules ne "bougent" pas en "copie liaison"

yes Xmenpl, c'est exactement mon probleme!

Sais tu quel alternative je pourrais utiliser?

(Je suis en train de creer un fichier anonyme, ca me prend du temps...)

Faut voir ?

Avec un exemple de fichier import et de ce que tu souhaites réellement récupérer dans ton onglet A ?

Il n'y a peut être pas besoin de récupérer l'onglet B intégralement en coller avec liaison ?

il faudrait un fichier source pour test et le fichier contenant ce que tu souhaites récupérer dans l'onglet A

Voila j'ai ajouté des fichiers exemple dans le premier message du topic que j'ai enormement simplifié !

Mais le probleme initiale reste le meme

Le fichier 2 fonctionne comme une base de données et des noms peuvent y etre ajouter ou supprimer et cela bouge les lignes

Dans le fichier 1 le 2 eme onglet est une copie liaison du fichier 2 et dans le 1 ere onglet on a la formule qui passe par le 2 eme onglet

Merci encore pour votre aide et désolé de fournir le fichier seulement maintenant

Hello,

Pour ne pas tout chambouler, définis zone_fin comme ceci

zone1_fin=DECALER(Database!$K$1;EQUIV(9^9;Database!$K:$K;1)-1;)
zone2_fin=DECALER(Database!$O$1;EQUIV(9^9;Database!$O:$O;1)-1;)

Pour autant ta formule ne fonctionne pas ...

donc, sur fichier1

en B2 :

=SOMMEPROD((zone1=A2)*zone2)

avec

zone1=DECALER(laison!$K$1;0;;EQUIV(9^9;laison!$K:$K;1)-1;)
zone2=DECALER(laison!$O$1;0;;EQUIV(9^9;laison!$O:$O;1)-1;)

j'ai oublié de préciser : pour changer le contenu du nom zone1 et zone2 :

Formules > Gestionnaire de noms

Rechercher des sujets similaires à "nommer dynamique"