J'ai une table que j'essaie de garder dynamique tout en utilisant la logique suivante:
Cell D500 - "=D18*D19"
Cell D501 - "=D20*D21"
Cell D502 - "=D22*D23"
...
Je dois conserver la dynamique des lignes et des colonnes car je vais copier ceci dans les colonnes E à SV (~ 500 colonnes), mais je n'arrive pas à trouver un bon moyen de copier ceci vers le bas sans incrémenter la valeur de la ligne. par 1 au lieu de 2., ou avoir toutes sortes de comportements indésirables.
Y a-t-il un bon moyen de s'y prendre?
microsoft-excel
Adam Reed
la source
la source
INT()
/INDIRECT
combo! JoliINDIRECT()
(ouOFFSET()
) car ils sont volatils et peuvent provoquer des ralentissements dans les feuilles de calcul volumineuses. C'est une bonne habitude à prendre, même pour les formules simples et les petites feuilles de calcul. De plus, la plupart des formules sont plus simples avecINDIRECT()
(et généralement c'est mate,MATCH()
).INDIRECT()
dans mon commentaire précédent aurait dû êtreINDEX()
!Une autre solution, utilisant le
INT()
une fonction:Il y a quelques paramètres:
500
: ceci est le numéro où votre formule commence, dans votre cas c'est la cellule D5004
: c'est le numéro de colonne (la cellule D500 est dans la 4ème colonne)2
: c'est le nombre de multiplications. Si vous vouliez multiplier 3 items (D18*D19*D20
), vous devez utiliser3
au lieu.18
/19
: ceci est la première et la deuxième ligne de vos calculs.Je vous invite à utiliser le bouton Evaluer dans l'onglet Formule pour voir comment cela fonctionne étape par étape.
la source