1
votes

Comment puis-je conserver les références à la modification de la feuille de calcul constante?

J'ai 2 colonnes dans une feuille qui font référence à une autre feuille dynamique qui a de nouvelles lignes ajoutées tout le temps en haut.

Je veux que la colonne A soit une copie de la colonne A dans Sheet1 , donc cela fonctionne pour mettre dans la cellule A1:

=formula(B30)

Cependant, je veulent que la colonne B soit une formule appliquée à chaque ligne de la colonne B de Sheet1 . Le problème est que lorsque je mets une formule, par exemple

=formula(B1)

puis il devient

={Sheet1!A:A}

lorsque 29 nouvelles lignes sont ajoutées

Je le veux rester en tant que B1, mais ce ne sera pas le cas. Si j'utilise une référence absolue $ B $ 1, je ne peux pas copier la formule dans la colonne.

Des assistants peuvent-ils m'aider?


1 commentaires

Demandez-vous que la formule de la cellule B1 de Sheet2 soit verrouillée en tant que = formule (Sheet1! B1) , même si vous insérez de nouvelles lignes en haut?


3 Réponses :


0
votes

Vous pouvez faire une "référence partiellement absolue" (je ne connais pas la bonne façon de dire cela).

Vous ne pouvez verrouiller que la colonne, donc = $ A1 ce qui signifie que cela ne changera jamais la colonne mais lorsque vous faites glisser la formule vers le bas, elle deviendra = $ A2 < / code>, = $ A3 ...

Ou vous pouvez verrouiller uniquement la ligne en tapant = A $ 1 De cette façon, elle sera verrouillée uniquement sur la ligne.

Vous pouvez également le faire en appuyant plusieurs fois sur F4: 1 fois les deux verrouillera, la 2ème fois verrouillera uniquement la ligne, la 3ème fois la colonne uniquement et la 4ème fois supprimera le verrouillage.


3 commentaires

La façon dont je le lis, l'OP veut que la référence reste sur B1 même si une nouvelle ligne sur cette feuille est ajoutée. Même avec des références absolues, il passera à B2 si une nouvelle ligne est ajoutée à la ligne 1.


Eh bien, si tel est le cas (ajouter des colonnes en haut), la seule façon de laisser cela fixe serait d'utiliser la fonction INDIRECT : = INDIRECT ("B" & 1) de cette façon, Excel ne changera pas le numéro de ligne. Cependant, soyez prudent lorsque vous utilisez cette fonction car elle utilise beaucoup de ressources. N'abusez pas de cela dans la feuille de calcul :) @halfiranian pouvez-vous clarifier notre doute ici?


Non, la fonction INDEX montrée par Chronocidal le fera et elle n'est pas volatile et itérera au fur et à mesure que l'utilisateur la fait glisser vers le bas.



5
votes

Si vous souhaitez obtenir la ligne correspondante à partir d'une colonne d'une autre feuille de calcul, utilisez INDEX et ROW , comme ceci:

=FORMULA(INDEX(Sheet1!$B:$B, ROW(), 1))

Cela renverra toujours la valeur de la colonne B de Sheet1, sur la même ligne que la formule est dans Sheet2 - même si vous insérez des lignes en haut de Sheet1


0 commentaires

0
votes

la bonne façon serait d'utiliser INDIRECT comme:

=INDIRECT("Sheet1!B1:B")


0 commentaires