web-dev-qa-db-fra.com

Somme des valeurs des 10 cellules au dessus de moi?

J'aimerais une formule pour Google Sheets qui renvoie la somme des valeurs des dix cellules situées au-dessus de la cellule actuelle.

Autrement dit, si je suis sur C31, je veux l’équivalent de =SUM(C20:C30). Cependant, je veux quelque chose qui fonctionnera indépendamment de la cellule actuelle.

1
Xeon06

Comme indiqué dans les commentaires, si vous copiez/collez votre formule, cela "déplacera" la formule (même si vous la copiez dans une autre cellule).

Ceci est le même comportement que Excel. Notez que vous pouvez également utiliser $ pour conserver la colonne (=$A1) ou la ligne (=A$1) ou les deux (=$A$1).

2
JMax

Cela fera:

=SUM(INDIRECT(ADDRESS(ROW()-11;COLUMN();4) &":"& ADDRESS(ROW()-1;COLUMN();4)))

Collez-le dans la cellule de votre choix et la somme sera supérieure à 10, sans modification de la valeur.

La fonction ADDRESS renvoie ne chaîne avec la référence de nom d'une cellule. Nous joignons deux références avec un ":" entre elles, ce qui nous donne ne chaîne comme "B5: B15". Nous leur fournissons la fonction INDIRECT avec cette chaîne et celle-ci sera convertie en référence interne. Nous alimentons cette référence à la fonction SUM et le tour est joué.

Attention au ";" caractères séparant les paramètres de la fonction. J'utilise une feuille de calcul portugaise brésilienne et le séparateur est le ";", mais il peut varier en fonction de la localisation de la feuille. Aux États-Unis, je pense qu'ils utilisent des virgules (","), donc si cela vous donne une erreur, essayez de changer ";" pour ",".

2
diego nunes

Une version simplifiée de @ diego nunes 'A:

=sum(offset(indirect(ADDRESS(ROW(),COLUMN())),-10,,10)) 

Cela peut être traîné et travailler n'importe où il y a dix rangées ou plus au-dessus.

Cependant, comme suggéré par @ JMax quelque chose comme =sum(a1:a10) si écrit en A11 peut être copié et collé et (sauf dans les dix premières lignes) sera automatiquement ajusté en conséquence, donc copié à partir de A11 dire C14 deviendrait:

  =sum(c4:c13)

(faites-le glisser cependant et il reste =sum(a1:a10)).

SOMME
OFFSET
INDIRECT
ADRESSE
RANGÉE
COLUMN

1
pnuts

essayer:

=SUM(QUERY(SORT(C2:C30; ROW(C2:C30)*ISNUMBER(C2:C30); 0); "select * limit 10"))

ceci est essentiellement basé sur un faux calcul où ROW nombre est multiplié par le nombre (ISNUMBER) dans la cellule pour savoir où se trouve le dernier nombre dans une plage donnée - C2:C30. une sortie est ensuite reflétée avec SORT, de sorte que la dernière valeur devient première à partir du haut, puis QUERY prend tout cela et n’affiche que --- 10 lignes/valeurs qui sont passées dans SUM

enter image description here

comme on le voit sur l'image, cette solution prend la somme de:

  • la colonne B additionne les nombres: 6, 1, 5, 7, 8, 7, 6, 5, 9, 45
  • la colonne C additionne les nombres: 5, 3, 2, 5, 7, 9, 8, 5, 4, 1
  • la colonne D additionne les nombres: 1, 8, 1, 1, 2, 2, 2, 1, 9, 2
0
user0

essayer:

=SUM(OFFSET(C2; MAX(ARRAYFORMULA(ROW(C2:C30)*--(C2:C30<>"")))-11; ; 10))

à nouveau basé sur un faux calcul où ROW nombre est multiplié par la cellule qui n'est pas vide C2:C30<>"" afin de savoir où se trouve la dernière entrée d'un plage donnée C2:C30. then ARRAYFORMULA génère une liste de valeurs filtrées par MAX pour intercepter toutes les erreurs (comme 25 * x), puis inverser OFFSET est utilisé à partir d'un point de départ/cellule C2 où est le début de la liste, qui est ensuite restreinte par les 10 dernières valeurs avec -11, , 10 et passé dans SUM formule.

comme on le voit sur l'image, cette solution prend la somme de:

  • la colonne B additionne les nombres: 6, 1, 5, 7, 8, 7, 6, 5, 9, 45
  • la colonne C additionne les nombres: 5, x, 3, 2, x, 5, 7, 9, 8, 5
  • la colonne D additionne les nombres: 1, 8, 1, empty cell, 1, 2, 2, empty cell, 2, 1
0
user0

essayer:

_=SUM(INDEX(C2:C30; MATCH(99999; C2:C30)-9):
     INDEX(C2:C30; MATCH(99999; C2:C30)))_

cette solution est basée sur une recherche de faux numéro 99999 dans la plage C2:C30 et à moins que ce numéro spécifique ne soit pas fourni, il n'y a pas - MATCH so 2 INDEX les listes sont générées tandis que l'une d'entre elles est légèrement décalée de deux lignes -9 quelle sorte annule toutes les valeurs laissées seulement les 10 dernières cellules à calculer par la formule SUM.

enter image description here

comme on le voit sur l'image, cette solution prend la moyenne de:

  • la colonne B additionne les nombres: 6, 1, 5, 7, 8, 7, 6, 5, 9, 45
  • la colonne C additionne les nombres: 5, x, 3, 2, x, 5, 7, 9, 8, 5
  • la colonne D additionne les nombres: 1, 8, 1, empty cell, 1, 2, 2, empty cell, 2, 1
0
user0