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 :

VBA, valider une formule dans une cellule [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 19
    Points
    19
    Par défaut VBA, valider une formule dans une cellule
    Bonjour à tous,

    Je souhaite, via une maccro, inscrire une formule dans une cellule: voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("e10").Offset(k).Formula = "=SI(" & Range("zz1").Address & " > " & Range("g" & k + 10).Address & " , " & Range("g" & k + 10).Address & " - " & Range("c" & k + 10).Address & " , " & Range("zz1").Address & " - " & Range("c" & k + 10).Address & ")"
    la maccro s’exécute sans problème, la formule s'inscrit correctement dans la bonne cellule, seulement excel ne la comprend pas.
    je m'explique :

    l'inscription #NOM# apparaît dans la cellule.
    Si je clique sur la cellule et rentre dans la barre d’écriture, (les cellules concernaient par la formule rentre alors en surbrillance),je ne change aucune valeur, j'appuie juste sur ENTREE, et le calcule se fait correctement.

    Je ne comprend pas pourquoi il ne le fait pas directement.
    Je souhaiterais que mon calcule se génère automatique sans intervention de l'utilisateur, commet puis je faire?

    pouvez vous m'aider?

    cdt

    Yann

  2. #2
    Invité
    Invité(e)
    Par défaut Bonjour,
    dans une cellule de ton excel, écrits la formule tel quelle doit être.
    positionnes toi sur la cellule qui contient la formule.
    vas dans vb raccourci clavier [Alt] + [F11]
    ouvres la fenêtre d'exécution raccourci clavier [Ctrl] + [G]
    entre le code ?ActiveCell.Formula puis valide en appuyant sur la touche [Enter]

  3. #3
    Membre à l'essai
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Merci pour votre réponse mais, pour être honnête, je ne comprend pas l'opération.
    je l'ai exécuté, dans la boite d’exécution, en dessous de ?ActiveCell.Formula, ma formule s'affiche mais je ne comprend pas comment ça peut m'aider et je ne comprend toujours pas pour quoi je dois valider la cellule pour que le calcul se fasse et que la valeur s'affiche.

    La formule est exactement après l'avoir rentrée via ma maccro et après avoir fait l’opération manuelle (allez dans la barre d'écriture et appuyer sur entré)

    je suis presque certain que la formule que j'inscris dans la cellule, via le code, est correct

    au temps pour moi, je viens de comprendre, il suffit de remplacer le SI par un IF.
    Merci bien,

    mais pouvez vous m'expliquer pourquoi il ne comprend pas le SI.

    Si je fais une somme, il ne comprendra pas SOMME non plus mais il comprend SUM?

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Formula attend une formule anglaise avec les termes anglais et des virgules comme séparateurs
    FormulaLocal demande une formule française comme dans Excel

    Par contre, Formula sera compris de toutes les versions d'Excel, mais pas FormulaLocal...
    MPi²

  5. #5
    Invité
    Invité(e)
    Par défaut
    french No-Pocket!
    Citation Envoyé par parmi Voir le message
    Par contre, Formula sera compris de toutes les versions d'Excel, mais pas FormulaLocal...
    Oui

  6. #6
    Membre à l'essai
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    OK merci à vous pour vos réponse

    bonne fin de journée

    a+

    Yann

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

Discussions similaires

  1. [XL-2010] [VBA] Remplacer un caractére dans une formule par une variable (boucle for)
    Par surikhat dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/06/2015, 19h12
  2. Réponses: 2
    Dernier message: 23/03/2014, 12h05
  3. [XL-2010] Formule : attribuer une formule dans une cellule
    Par popi33370 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/03/2014, 18h06
  4. Réponses: 3
    Dernier message: 29/01/2008, 12h08
  5. Réponses: 2
    Dernier message: 02/06/2006, 11h26

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