IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

saisir un nouveau montant en gardant l'hisorique de la cellule [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 633
    Par défaut saisir un nouveau montant en gardant l'hisorique de la cellule
    Bonjour,
    Dans une cellule, on note les remboursements d'un client, mais on voudrait conserver l'historique des sommes déjà versées.
    En saisie directe, c'est facile, il suffit d'entrer dans la cellule (F2) et de saisir "+ 10,50" pour ajouter 10 euros 50 et on obtient par exemple =100+100+(100*3)+25.5+14+10.5
    Comment faire avec VBA ? j'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim m As Double
        m = Range("A20")       
        Range("A20") = "=" & m & "+10.5"
    mais j'ai le message erreur définie par l'application.
    j'ai également essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim m As Double
        Range("A20") = Range("A20") + 10.5
    mais je me retrouve avec le montant total et non le détail des sommes versées
    Merci de votre aide

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    Bonjour,

    Ceci fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If Left(Range("A20").Formula, 1) = "=" Then
        Range("A20").Formula = Range("A20").Formula & "+10.5"
    Else
        Range("A20").Formula = "=" & Range("A20").Formula & "+10.5"
    End If

  3. #3
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    bonjour

    MonRange.Formula = MonRange.Formula & "+10.5"

    Je te laisse utiliser des variables pour ne pas conserver le "+10.5" hardcodé

  4. #4
    Membre confirmé Avatar de fuine0069
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2017
    Messages : 33
    Par défaut
    pourquoi ne pas utiliser l'ajout de commentaire en VBA?
    tu pourras même y mettre d'autres infos comme la date de l'adaptation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    sub comment()
    dim m as string
    dim n as double
    on error resume next
    m=Range("A20")
    n=10,5
       Range("A20").AddComment
       Range("A20").Comment.Text Text:= m & "+" & n
    Range("A20")= m + n
    end sub

  5. #5
    Membre éclairé
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 633
    Par défaut
    Bonjour à tous,
    Un grand merci à chacun pour votre aide.
    J'ai utilisé la proposition de halaster08 qui prend en compte la 1ère ligne du tableau.
    Désolée de ne pas avoir répondu plus tôt, j'ai pris qq jours de repos.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/06/2017, 17h55
  2. Réponses: 9
    Dernier message: 17/06/2015, 09h44
  3. Réponses: 5
    Dernier message: 04/04/2008, 19h40
  4. Réponses: 2
    Dernier message: 21/07/2006, 10h06
  5. [nouveau] saisir plusieurs espace de suite ou tabuler
    Par siuol dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 1
    Dernier message: 28/02/2005, 12h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo