additionner dans la meme cellule

cyril1909

XLDnaute Nouveau
bonjour a tous j'aurai voulu savoir comment faire pour additionner plusieurs nombre dans la meme cellule
si par exemple j'ai 10 en A5 et que je tape encore 10 je voudrai que dans la cellule apparaisse 20
j'espere avoir ete assez clair et attend vos reponses avec impatience
je vous en remercie d'avance
 

Cousinhub

XLDnaute Barbatruc
Re : additionner dans la meme cellule

Bonsoir, cyril

Pour faire une addition d'une cellule sur elle-même, on peut utiliser une option d'excel, l'itération, mais il faut quand même une deuxième cellule, où l'on rentre la valeur à additionner....
Par VBA, c'est tout à fait possible, si cela t'intéresse, tu demandes avec un peu plus de précisions, la structure de ton tableau par exemple, le nombre de cellules que tu désires "additionnées" à elles-mêmes.....
 

steve74

XLDnaute Nouveau
Re : additionner dans la meme cellule

Insères ce code et tu verras...

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 Then
Application.EnableEvents = False
If [mémo] <> "" Then
Target = Target + [mémo]
End If
Application.EnableEvents = True
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 Then
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) & Target.Value & Chr(34)
End If
End Sub

mais aussi celui-ci qui garde en mémoire l'ancienne valeur, la cellule te donne le résultat et dans la barre de formule tu vois l'opération

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 Then
Application.EnableEvents = False
If [mémo] <> "" Then
If Left([mémo], 1) <> "=" Then
Target.Formula = "=" & [mémo] & "+" & Target
Else
Target.Formula = [mémo] & "+" & Target
End If
End If
Application.EnableEvents = True
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 Then
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) & Target.Formula & Chr(34)
End If
End Sub
 

Cousinhub

XLDnaute Barbatruc
Re : additionner dans la meme cellule

Re-, cyril, bonsoir steve

ne connaissant pas le niveau "VBA" de cyril, je ne lui avais pas proposé de code

on peut également faire ceci :

dans un module standard (Insertion/Module)

on déclare la variable "Valeur" en Public

Code:
Public Valeur

dans le code de ThisWorkbook :

Code:
Private Sub Workbook_Open()
Valeur = [A1]
End Sub

et dans le code de la feuille :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$A$1" Then Target = Target + Valeur
Valeur = Target
Application.EnableEvents = True
End Sub

si la cellule à additionner sur elle-même est la cellule "A1"
 

Evanescence

XLDnaute Nouveau
Re : additionner dans la meme cellule

Re-, cyril, bonsoir steve

ne connaissant pas le niveau "VBA" de cyril, je ne lui avais pas proposé de code

on peut également faire ceci :

dans un module standard (Insertion/Module)

on déclare la variable "Valeur" en Public

Code:
Public Valeur

dans le code de ThisWorkbook :

Code:
Private Sub Workbook_Open()
Valeur = [A1]
End Sub

et dans le code de la feuille :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$A$1" Then Target = Target + Valeur
Valeur = Target
Application.EnableEvents = True
End Sub

si la cellule à additionner sur elle-même est la cellule "A1"



Bonjour Bhbh,

Votre réponse date un tantinet j'en conviens, mais elle m'a été d'une grande utilité! Alors grand merci pour la désespérée d'Excel que je suis!

Vos codes fonctionnent à merveille sur mon tableau, mais malheureusement cela ne s'applique qu'à une seule et unique cellule!

Si vous passez encore en ces méandres virtuels, auriez vous la gentillesse de m'expliquer comment je peux étendre ces codes à TOUTES les cellules (cellules toutes munies d'un menu déroulant à titre d'info si cela y joue ou non!)

D'avance un grand merci!


Et comme je dis souvent ....
"A coeur vaillant .... Rien d'impossible !"

Au plaisir
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : additionner dans la meme cellule

Bonsoir,

http://boisgontierjacques.free.fr/fichiers/Evenementiel/WorkSheetChangeCumul.xls

Code:
Les nombres entrés dans une cellule se cumulent

Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Column = 1 And Target.Count = 1 Then
   Application.EnableEvents = False
   ValSaisie = Target
   Application.Undo
   Target = ValSaisie + Target
   Application.EnableEvents = True
 End If
End Sub

JB
 
Dernière édition:

Evanescence

XLDnaute Nouveau
Re : additionner dans la meme cellule

Bonjour JB,

Vous remercie de votre réponse et essaie dès demain mon arrivée au travail, mais il me semble avoir déjà essayé votre solution mais en vain.
Peut être avais je mal entré ce code : clic droit sur l'onglet de la feuille ... visualiser le code .... et ensuite ?
Et comment faut il au préalable que je sélectionne toutes les cellules auxquelles je veux que cela s'applique ?
Méa culpa, suis plus que novice!
Vous en remerciant d'avance
Bonne journée!
Claire
 

James007

XLDnaute Barbatruc
Re : additionner dans la meme cellule

Bonjour Claire,

Je te propose le code suivant à recopier dans le module de ta feuille :

VB:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NouVal
If Target.Count > 1 Then Exit Sub
' Choisir la Colonne dans laquelle la règle s'applique :
' pour A = 1, B = 2, etc ...
 If Target.Column = 1 Then
    Application.EnableEvents = False
    NouVal = Target
    Application.Undo
    If IsNumeric(Target) And IsNumeric(NouVal) Then Target = NouVal + Target
    Application.EnableEvents = True
 End If
End Sub

A +
:)
 

bond

XLDnaute Occasionnel
Re : additionner dans la meme cellule

Bonjour à tous,
Je suis ce post car le sujet m'interesse...

Le pb que je vois, c'est que les solutions proposées ne permettent plus de saisir autre chose que des valeurs numériques (?)... :mad:

NB :
"A coeur vaillant, rien d'impossible', c'est pas de Evanescence, mais ça date du 15e avec Jacques Coeur :)
 

James007

XLDnaute Barbatruc
Re : additionner dans la meme cellule

Bonjour à tous,
Je suis ce post car le sujet m'interesse...

Le pb que je vois, c'est que les solutions proposées ne permettent plus de saisir autre chose que des valeurs numériques (?)... :mad:

NB :
"A coeur vaillant, rien d'impossible', c'est pas de Evanescence, mais ça date du 15e avec Jacques Coeur :)

Cher bond ...

Encore heureux ... que l'on ne puisse pas saisir de texte .... puisque le Sujet est :

Additionner dans la même cellule

S'il s'agit de restreindre l'addition à une seule cellule, c'est faisable ...mais là aussi pour éviter accidentellement de perdre son total cumulé ... mieux vaut que la saisie de texte soit interdite ... !!!


A +
:)
 

bond

XLDnaute Occasionnel
Re : additionner dans la meme cellule

Bien sur, je suis aller trop vite dans ma remarque : je voulais dire "les solutions proposées ne permettent plus de saisir autre chose que des valeurs numériques" dans la zone de controle de la macro. par exemple si tu veux placer un libellé de colonne....
 

James007

XLDnaute Barbatruc
Re : additionner dans la meme cellule

Bien sur, je suis aller trop vite dans ma remarque : je voulais dire "les solutions proposées ne permettent plus de saisir autre chose que des valeurs numériques" dans la zone de controle de la macro. par exemple si tu veux placer un libellé de colonne....

Re,

Pour contrôler et choisir la zone dans laquelle la règle s'applique :

VB:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim NouVal
If Target.Count > 1 Then Exit Sub
' Adapter aux besoins la Plage dans laquelle la règle s'applique ...A2:A10
If Intersect(Target, Me.Range("A2:A10")) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    NouVal = Target
    Application.Undo
    If IsNumeric(Target) And IsNumeric(NouVal) Then Target = NouVal + Target
    Application.EnableEvents = True
End Sub

A +
:)
 

Discussions similaires

Réponses
8
Affichages
254

Statistiques des forums

Discussions
312 492
Messages
2 088 940
Membres
103 989
dernier inscrit
jralonso