Incrémentation d'une cellule par une cellule

Résolu
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   -  
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   -
bonjour,
Je suis une novice sur excel et j'essai de trouver une solution pour incrémenter une cellule par le contenu d'une autre cellule qui doit ensuite s'effacer quand j'appuie sur entrée.
Je m'explique:
En D40 je te tape 100 et je voudrais que ce chiffre s'ajoute à C40 et que la valeur de D40 se remette à 0 après validation.
Je voudrais créer cela pour plusieurs colonne.( précisément de D40 a D456 et respectivement de C40 a c 56.

Merci d'avance j'espère avoir été assez clair.


<config>Windows 7 / office 2007

8 réponses

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
bonjour

lorsque tu saisis une valeur dans D40:D456
la cellule correspondante est additionnée de la
valeur

Private Sub Worksheet_Change(ByVal Target As Range) 
Static flag As Boolean 
If Intersect(Target, Range("D40:D456")) Is Nothing Or flag Then 
    flag = False 
    End 
End If 

flag = True 
Target.Offset(0, -1) = Target.Offset(0, -1) + Target 
Target = "" 

End Sub 


a installer dans le module feuille concernée

pour cela:
copie la macro ci dessus
clic droit sur le nom de l'onglet
visualiser code
coller

en espérant que...
:-x
0
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
Ca marche pas mal mais j'aimerai si possible effacer automatiquement la valeur qui vient d'etre ajouter
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
merci pour le "pas mal"...

la valeur dans D est remise à "rien" par

Target = ""

0
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
non franchement c'est exactement ce que je veux sauf que la cellule n'est pas vidé malgré target="".
En fait le chiffre que je rente reste afficher je dois l'effacer manuellement.
Si tu trouves pas c'est juste un petit détail mais je peux faire sans. Encore merci et désolé pour ma maladresse concernant le pas mal.
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
Effectivement

macro corrigée:
Private Sub Worksheet_Change(ByVal Target As Range) 

If Intersect(Target, Range("D40:D456")) Is Nothing Then: Exit Sub 
    Target.Offset(0, -1) = Target.Offset(0, -1) + Target 
    Application.EnableEvents = False 
        Target = "" 
    Application.EnableEvents = True 
End Sub


Sub sos_evenements()
Application.EnableEvents = True
End Sub


la macro sos_evenements est à placer dans un module (module 1 ou autre) car enableevents=false reste sur cet état si on sort accidentellement de la macro tant qu'il n'y a pas de remise à true
c'est la raison pour la quelle j'avais mis un booléen mais il y a eu le syndrome du lundi!

N'inquiète pas pour le "pas mal": le cancre n'allait pas louper le truc :-D
0

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

Posez votre question
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
desole j'ai pas compris ce que je dois modifier.
Rajouter un module sos_evenement et remplacer la première macro par la 2eme modifier.
Si c'est ca c ce que j'ai fait et rien ne fonctionne, as tu une idée pour ou j'ai déconner?
0
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
En gros j'ai pas compri ce que je dois faire et j'ai pas compri non plus ton explication.
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
ci joint démo
http://www.cijoint.fr/cjlink.php?file=cj201006/cijrG5tcRN.xls
0
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
C'est bon j'ai trouver merci bcp c'est exactement ce que je voulais.
J'ai posé une autre question sur le forum si tu veux m'aider pas de soucis .
Bonne journee merci
0
nonoche2801 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
Encore merci pour la démo.
0