Somme des 12 cellules adjacentes

Résolu/Fermé
rb13 - 1 mars 2009 à 12:47
m@rina Messages postés 20104 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 29 avril 2024 - 2 mars 2009 à 00:24
Bonjour,
Je voudrais savoir comment créer la somme des 12 cellules adjacentes mais si j'insère d'autres celleules. Je m'explique avec un exemple:
Dans la cellule A1, je veux avoir le total des ventes des derniers 12 mois. A chaque fin de mois, j'insère en B1 les ventes du dernier mois, en déplacant vers la gauche les chiffres précédent. Donc en A1 je veux avoir la somme des 12 cellules adjacentes (les 12 derniers mois) . Si j'utilise la cellule classique: SOMME ( B1: K1), la celule insérée n'est pas prise en compte car la formule devient automatiquement SOMME (C1:L1) dès que j'insère une cellule. Idem si j'utilise SOMME ($B1;$K1) .
Comment faire?
Merci de vos réponses.
A voir également:

10 réponses

m@rina Messages postés 20104 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 29 avril 2024 11 274
1 mars 2009 à 13:41
Bonjour,

L'autre solution est d'utiliser la fonction INDIRECT.

Ainsi tu mets dans une cellule quelconque le texte B1 et dans une autre le texte M1 (par exemple en cellules A10 et A11, mais ce peut être sur une autre feuille). La formule sera :

=SOMME(INDIRECT($A$10):INDIRECT($A$11))

Ainsi ta somme fera TOUJOURS référence à ce qui est indiqué dans les cellules A10 et A11, soit B1 à M1.

J'ajouterai que si tu ne veux pas monopoliser deux cellules, il suffit simplement de donner un nom au texte "B1" et un autre nom au texte "M1" directement dans la boîte de dialogue Insertion, Nom.
Ces deux noms seront utilisés comme ci-dessus à la place des références aux deux cellules.

m@rina
1
Ca y est, effectivement la solution de Marina marche. J'avais pas bien saisi la "nomination" des cellules.
Marina, merci pour la solution. Raymond, merci également pour la reformulation de la solution qui a fait "Tilt" Pourquoi, je sais pas, car effectivement en relisant à nouveau l'explication de Marina, je ne vois pas sur quoi j'ai buté.
BOn, le principal, cela marche!
Encore merci à vous!
1
m@rina Messages postés 20104 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 29 avril 2024 11 274
1 mars 2009 à 18:25
Bonsoir,

Bon, on est content de savoir que tout fonctionne ! ;)

Je reviens sur ta phrase :
"pas bien saisi la "nomination" des cellules. "

Raymond t'a bien expliqué comment utiliser ces cellules.

Par contre, je vais détailler un peu plus quand je t'ai dit qu'il n'était pas nécessaire de monopoliser ces deux cellules. Voici ce que tu peux faire, et ce sera plus élégant !

- Menu Insertion, Nom =Définir
- Donne un nom : Début (par exemple)
- Fait référence à : tu tapes ="B1"
- Clic sur le bouton Ajouter
puis
- tu redonnes un nom : Fin (par exemple)
- Fait référence à : tu tapes ="M1"
- Clic sur le bouton Ajouter

tu viens de créer deux noms "Début" et "Fin" qui font respectivement référence aux textes "B1" et "M1".

Tu peux maintenant utiliser ces deux noms dans ta formule INDIRECT, ce qui donnera :

=SOMME(INDIRECT(Début):INDIRECT(Fin))

m@rina

0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
1 mars 2009 à 13:16
Bonjour
Une petite astuce; :insérer votre cellule APRES la cellule de départ de la somme, ainsi , la formule s'agrandira avec les insertions:
soit pour l'exemple, en A1:
=SOMME(B1:C1)
laissez la colonne B libre à 0, éventuellemnt masquez la, et insérez sur la colonne C
Crdlmnt
0
Raymond PENTIER Messages postés 58399 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 29 avril 2024 17 094
1 mars 2009 à 13:26
Autre solution = En B1 saisir "Mois" ; donner à la plage B1:Z1 le nom "Plage" ; en A1 mettre comme formule =SOMME(Plage) ; insérer les mois suivants en C1.

Bonne méthode = Ne pas insérer, mais ajouter à droite les nouvelles valeurs, en conservant la formule actuelle =SOMME(B1:K1)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci pour vos réponse mais cela ne marche toujours pas.

Pour Vaucluse: effectivement cela intégre la nouvelle valeur garde également la plus ancienne, j'ai donc les somme des 13 derniers mois.

Pour Raymond: en ajoutant les cellules à droite, et en gardant la formule, je reste toujours avec le même résultat sans prend en compte les ventes du derniers mois.

Pour Marina: J'ai essayé la formule INDIRECT mais cela ne change pas. A chaque insertion, les adresse de cellule sont automatiquement décalées.

Je repose le porblème autrement:
En A1 j'ai mes ventes de Janvier 2008, en B1Fevrier 2008, en C1 mars 2008 etc. jusqu'en Fev 2009. Chaque mois je rajouterai les vents du mois.
Comment faire pour avoir la somme des ventes des 12 derniers mois ( mois glissants, càd, avoir à fin verier 2009 les ventes de Mars 2008 à Fev 2009)

Merci
0
Raymond PENTIER Messages postés 58399 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 29 avril 2024 17 094
1 mars 2009 à 14:44
Tu aurais employé l'expression "mois glissant" dès ton premier message, on aurait mieux compris ton besoin !

La solution de m@rina est correcte, et fonctionne parfaitement ; c'est toi qui l'a mal exploitée !
Alors, comme je présume que tu as certainement plusieurs lignes identiques dans ton fichier, je te suggère d'appliquer ainsi la formule de m@rina : Insère 2 colonnes à gauche de ton tableau actuel ; en A1 tu écris D1, en B1 tu écris O1, en C1 tu mets ta formule de total sur 12 mois =SOMME(INDIRECT(A1):INDIRECT(B1)) et à partir de D1 tu peux insérer tes colonnes ...

* par pure curiosité, comment avais-tu transcrit ce que t'avais indiqué m@rina ?
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
1 mars 2009 à 14:51
Re
je pense avoir une solution mais elle est loin d'être élégante:
En ligne 1 de B1 à M1, numérotez de 1à12

En A2, la formule:
=RECHERCHEH(1;A1:M2;2;0)+RECHERCHEV(2;A1:M2;2;0)+... etc jusqu'à 12

Ceci fonctionne en insérant sur B2 et semble correspondre à ce que vous voulez, car à priori la fonction reste bloquée par les limites A1 etM1 qui ne bougent pas,mais c'est un peu lourd(?) est il doit y avoir mieux!
Crdlmnt
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
1 mars 2009 à 14:56
Effectivement Raymond, ça marche et c'est éminemment plus simple que ce que j'avais concocté.
Crdlmnt et merci Marina , pour moi, ça peut servir
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
1 mars 2009 à 20:45
Bonjour tout le monde,

pour prolonger l'idée de m@rina, et simplifier pour ne plus utiliser de nom, on peut tout simplement donner la référence en texte :
=SOMME(INDIRECT("A1"):INDIRECT("A12"))
ça sera insensible aux insertions.
Rhalalaaa, quand on part dans une direction... ;-)
eric
0
m@rina Messages postés 20104 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 29 avril 2024 11 274
2 mars 2009 à 00:24
Bonjour Eriic

Ben oui !!! :D))
C'est toujours difficile de faire simple !!
Merci pour ce retour à la simplicité...

m@rina
0