figer une cellule dans un tableau

beabianchini

XLDnaute Occasionnel
bonjour,

j'ai créé un tableau dans excel (insertion / tableau )
je voudrais figer une cellule dans une formule.
Ma formule est la suivante ;

=+Tableau1[[#Cette ligne];[colonne b]]*Tableau1[[#Cette ligne];[colonne a]]
je voudrais que la colonne b de cette ligne soit figée pour que je puisse incrémenter ma formule vers la droite...
j'ai essayé en faisant f4 mais ça ne fonctionne pas.

Merci de votre aide.
 

hoerwind

XLDnaute Barbatruc
Re : figer une cellule dans un tableau

Bonjour,

Telle que précisée sous ta question, il m'étonnerait fort que cette formule fonctionne !
Pourquoi ne pas avoir joint un petit exemple permettant de tester une éventuelle réponse avant de la poster ?

En principe, en faisant précéder la lettre de la colonne par un $, cette lettre est figée en la copiant vers la droite.
 

Misange

XLDnaute Barbatruc
Re : figer une cellule dans un tableau

Bonjour

C'est mille fois hélas une ânerie +++ de microsoft qui n'a pas prévu cette fonctionnalité et ne semble pas comprendre à quel point elle serait utile.
L'écriture des références sous forme de tableau d'excel a un peu changé avec la version 2010 (plus courte et plus simple à lire) mais ils n'ont pas modifié ce que tu demandes et je crains fort que ce ne soit pas prévu pour la version à venir.

Pour contourner :
Le plus simple : tu écris la référence en mode classique $b$4. On peut parfaitement le faire dans un tableau. Et rassure toi si tu déplaces ton tableau, si tu changes l'ordre des colonnes ou autre, les formules s'ajusteront.

Si tu dois dans une formule faire référence à toute une colonne. Par exemple dans des formules de type NB.SI(tableau1[colonneb];...
et que tu veux figer colonne b dans ces formules pour pouvoir les tirer vers la droite dans ton tableau, tu ne peux hélas pas écrire
NB.SI(tableau1[$colonneb] par exemple

Tu peux t'en sortir de plusieurs façons :
1) la plus simple là encore c'est d'écrire en mode classique
nb.si($b$2:$b$100;...
Ce qui est quand même appréciable c'est que si tu ajoutes des valeurs sous ton tableau et que le bas du tableau devient la ligne 104, tu n'as en aucun cas besoin de modifier tes formules, elles s'adapteront automatiquement. Autrement dit tu as des plages dynamiques sans avoir rien à faire. Dans un petit tbleau, ou il est facile de voir à quoi $b$2:$b$100 fait référence c'est et de loin la solution préférable à mon avis.

Mais l'avantage des tableaux c'est quand même aussi de créer des références plus faciles à lire (et surtout à relire quand il faut les modifier)
Je préfère pour ma part lire
=devis[prix]*devis[qté]
que de lire des références de cellule
Si tu veux garder cette écriture, tu as deux solutions:

1) tu définis un nom. C'est bien plus simple qu'avec la fonction decaler, ça reste dynamique (la plage s'ajuste aux nouvelles données entrées dans le tableau). Pour ça tu sélectionne ta colonne b, onglet formule définir un nom. dans la zone de formule en bas tu vois qu'il est déjà écrit tableau1[colonneb]. Tu donnes un nom parlant et c'est tout bon. mais il faut faire cela pour toutes les colonnes que tu as besoin de référencer. Dans un tableau avec plein de colonnes c'est vite fastidieux.

2) tu utilises indirect
La fonction indirect reçoit du texte en paramètre et le transforme en référence excel. Quand tu tires vers la droite ou le bas une fonction contenant indirect, le texte ne s'incrémente pas comme avec une référence de cellule. C'est souvent un inconvénient mais ici ça devient un avantage :
=indirect("tableau1[colonneb]")*... figera la référence à la colonne B et permet de tirer les formules vers la droite.

Plus d'infos sur les formules dans les tableaux ici
Ce lien n'existe plus
Je rajouterai à l'occasion une page sur le problème que tu évoques et qui est réel.
2) tu ne
 

Misange

XLDnaute Barbatruc
Re : figer une cellule dans un tableau

Bonjour,

Telle que précisée sous ta question, il m'étonnerait fort que cette formule fonctionne !
Pourquoi ne pas avoir joint un petit exemple permettant de tester une éventuelle réponse avant de la poster ?

En principe, en faisant précéder la lettre de la colonne par un $, cette lettre est figée en la copiant vers la droite.

Bonjour Hoerwind
Cette écriture est celle qu'on trouve avec les tableaux dans excel 2007.
Dans excel 2010 c'est heureusement un peu plus simple mais non pas de $ possible, voir ma réponse...
 

hoerwind

XLDnaute Barbatruc
Re : figer une cellule dans un tableau

Salut Misange,

Merci pour l'explication, j'en ai pris bonne note.

Dans les tableaux je fais toujours référence aux adresses des cellules, donc peu d'expérience avec des noms, peut-être devrais-je revoir mes méthodes de travail !
 

Discussions similaires

Réponses
9
Affichages
180

Statistiques des forums

Discussions
312 229
Messages
2 086 423
Membres
103 206
dernier inscrit
diambote