Excel: comment référencer une ligne entière, à l'exception de quelques cellules?

28

Je veux pouvoir additionner ensemble les valeurs d'une ligne entière à l'exception des 2 premières cellules. Donc quelque chose comme ça:

=sum(A3:A*infinity*)

Comment puis-je faire cela?

Tourbillon
la source
1
Vous devrez peut-être modifier votre question ou votre exemple. Vous souhaitez référencer une ligne entière mais votre exemple résume une colonne de données.
Ellesa
La meilleure réponse à cette question est ici: superuser.com/a/1259946/342034 . Notez que je veux dire spécifiquement la réponse à laquelle j'ai lié, par BBK. Ne faites pas défiler vers le haut et ne cherchez pas la réponse acceptée ou les réponses les plus populaires. La réponse de BBK n'a que deux votes positifs à ce jour, mais c'est vraiment la seule réponse vraiment correcte à cette question.
Adi Inbar

Réponses:

17

Quelque chose de similaire a été demandé auparavant et je vais répéter cette réponse : il suffit de mettre:

=sum(a3:a1048576)

car il s'agit du nombre maximum de cellules par colonne / ligne dans Office 2007 et 2010. (65536 est le maximum pour avant 2007.) (Pour les colonnes, le nom de colonne maximum est XFD en 2007 et 2010 et IV avant 2007.)

Joseph Hansen
la source
Je suppose que c'est la seule façon de le faire si la formule elle-même est dans la même ligne. Merci
Eddy
13

Additionnez tout, puis supprimez ceux que vous ne souhaitez pas inclure:

=SUM(A:A)-A1-A2

Modifier:

Comme l'a souligné josmh, la formule ci-dessus échouera avec une erreur si A1 ou A2 ne sont pas numériques - mais ce qui suit fonctionnera:

=SUM(A:A)-SUM(A1,A2)  

ou

=SUM(A:A)-SUM(A1:A2)  

ou (pour un peu de plaisir!)

=SUM(A:A,(-1*(SUM(A1))),(-1*SUM((A2))))

Ils fonctionnent car la fonction SUM ignore les champs non numériques

Linker3000
la source
3
Cela ne fonctionnera pas si A1 ou A2 sont des en-têtes contenant du texte tel que "Nombre de personnes" ou "Prix". La soustraction de "Prix" d'un nombre provoque une erreur de formule.
Joseph Hansen
Juste envelopper et "IFERROR" puis
James
Désolé s'il était peut-être grossier de voir comment le commentaire est apparu. A voté maintenant!
Joseph Hansen
Est-ce que cela fonctionnera si la cellule avec la formule est sur la même ligne, disons dans A1?
Eddy
@Eddy Non, cela créerait une référence circulaire.
Adi Inbar
5

Pour additionner une ligne entière :

=sum(1:1)

Remplacez 1 par votre numéro de ligne de départ , puis utilisez la poignée de remplissage automatique en conséquence. Si vous faites glisser la formule vers le bas, elle changera en "= somme (2: 2)" et ainsi de suite ..

Pour résumer la ligne entière , à l'exception des 2 premières colonnes :

=sum(1:1)-sum($a1:$b1)

Cela vous aidera à réduire la taille du fichier.

Ellesa
la source
5

Cela a déjà plusieurs bonnes réponses, mais voici une méthode que je n'ai pas encore vue publiée:

=SUM(OFFSET(3:3,0,2,1,COLUMNS(3:3)-2))

Le format est SUM(OFFSET(Range, Rows, Cols, [Height], [Width])). Nous commençons avec toute la plage, la décalons de zéro lignes vers le bas et deux colonnes au-dessus, définissons la hauteur sur 1 et définissons la largeur sur sa largeur actuelle moins deux. Tant que le réglage de la largeur est le même que le décalage, cela fonctionne parfaitement. Voici la même idée pour additionner une colonne au lieu d'une ligne: (Notez que vous n'avez pas à utiliser le Widthparamètre car vous voulez la même largeur que la plage d'origine.)

=SUM(OFFSET(A:A,2,0,ROWS(A:A)-2))

L'avantage de ces formules par rapport à la réponse actuellement acceptée est qu'elles fonctionnent dans n'importe quelle version d'Excel. Il n'ajustera pas non plus la plage si vous insérez des cellules devant car il fait référence à la ligne / colonne entière. Vous pouvez ou non souhaiter cette fonctionnalité en fonction de la configuration de vos données.

Ingénieur Toast
la source
C'est en fait la meilleure réponse. C'est aussi proche =sum(A3:A*infinity*)que Microsoft Excel le permettra. Malheureusement, chaque référence doit être entrée deux fois (une pour la fonction OFFSET et une autre pour la fonction ROWS).
Kevin Li
5

Je pensais que vous pouviez simplement faire ce qui suit: = SUM (A3: A)

Edit : Désolé d'avoir mal lu, c'est pour une colonne

Pour les lignes, voir la réponse approuvée.

skube
la source
1
Je me souviens avoir fait cela dans le et cela a fonctionné dans un travail antérieur que j'avais, mais dans ma copie d'Office 2007 en ce moment, cette notation ne fonctionne pas dans les formules, ou si vous la tapez dans la zone Nom.
p0lar_bear
1
c'est en fait la bonne réponse
voxobscuro
1
N'aime pas ça dans Excel pour Mac 15.36
Will
Pour Microsoft Excel 2016, cela devrait l'être =SUM(A3:A:A).
Keith OYS
Dans Excel 2013, =SUM(A3:A:A)semble être le même que =SUM(A:A). (Je suis surpris que ce ne soit pas une erreur de syntaxe.)
Scott
0

Vous pouvez également sélectionner des cellules dans une ligne ou une colonne en sélectionnant la première cellule, puis en appuyant sur la touche CTRL+ SHIFT+ ARROW( RIGHT ARROWou LEFT ARROWpour les lignes, la flèche vers le haut ou la flèche vers le bas pour les colonnes).

Remarque Si la ligne ou la colonne contient des données, la touche CTRL + MAJ + FLÈCHE sélectionne la ligne ou la colonne dans la dernière cellule utilisée. Appuyez une deuxième fois sur la touche CTRL + MAJ + FLÈCHE pour sélectionner la ligne ou la colonne entière.

PS.
Dommage qu'Excel n'ait pas la même astuce que Google Sheets . Par exemple. pour sélectionner de C2 à C ( infini ), vous pouvez y faire:

SUM(C2:2)
Serge
la source
Êtes-vous sûr que cela fonctionne? Cela ne fonctionne certainement pas dans Excel 2013. De plus, c'est la même réponse que Skube a posté il y a plus de 2 ans.
Engineer Toast