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-E] Calcul de formule automatique


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier Avatar de ashurai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 144
    Points : 115
    Points
    115
    Par défaut [VBA-E] Calcul de formule automatique
    Bonjour à tous,

    J'ai créé une macro qui génére des formule Excel, mais elle ne sont pas calculées.

    J'ai pourtant éssayé la méthode calculate(), mais rien n'y fait...

    Voici un exemple de formule qui est générée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =RECHERCHEV("CellChFail_G";S1EFFH_10000;2;FAUX)/RECHERCHEV("CellChOrder_G";S1EFFH_10000;2;FAUX)*100
    La cellule en question contient bien cette formule, mais elle affiche #NOM?.

    Lorsque je rentre en ecriture sur cette cellule, et que j'appui sur la touche <return>, la formule est calculée...

    J'avous que je comprend pas bien...

    Merci d'avance.

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Précise ce qu'est "CellChFail G", j'ai comme une idée

    A+

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Points : 733
    Points
    733
    Par défaut
    C'est la valeur recherchée... Mais ca?
    S1EFFH_10000
    Au lieu du faux met 0
    N'oubliez pas de mettre le

  4. #4
    Membre régulier Avatar de ashurai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 144
    Points : 115
    Points
    115
    Par défaut
    le "S1EFFH_10000" c'est un range nommé, je recherche la valeur "CellChFail_G" dans la matrice nommée "S1EFFH_10000", si je trouve, je renvoi la valeur contenu dans la 2è colonne de la matrice.

    Sinon,j'ai bien trouvé une solution, mais je la trouve un peu hardcore

    Aprés l'insertion de la formule dans la cellule, je la séléctionne, et je simule l'entrée en écriture et la touche return... Ca marche, mais... comment dire... Bah, c'est pas beau tout simplement ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    cellActiveCell.Select
    SendKeys "{F2}~"
    DoEvents

  5. #5
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Points : 733
    Points
    733
    Par défaut
    alalala...

    Cells.Formula = "RECHERCHEV ..." pas bien

    Cells.Formula = "VLOOKUP ..." c'est mieu lol ca marche ca...


    donc je recap: tu remplace RECHERCHEV par VLOOKUP et
    RECHERCHEH par HLOOKUP et ca devrait aller
    Excel traduit VBA pas
    N'oubliez pas de mettre le

  6. #6
    Membre régulier Avatar de ashurai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 144
    Points : 115
    Points
    115
    Par défaut
    Effectivement, c'est mieux.

    Du coup, je vais devoir aussi remplacer mes SI et OU !

    Merci !

  7. #7
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Points : 733
    Points
    733
    Par défaut
    De rien incroyable mais vrai je l'ai appris aujourd'hui lol
    N'oubliez pas de mettre le

  8. #8
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Si tu utilises FormulaLocal au lieu de Formula, tu peux laisser en français
    Citation Envoyé par L'aide
    Renvoie ou définit la formule de l'objet, en utilisant les références du style A1 dans le langage de l'utilisateur. Argument de type Variant en lecture-écriture pour les objets Range, argument de type String en lecture-écriture pour les objets Series.
    A+

    Encore des trucs à apprendre, Vesta ?
    Je suis comme toi

  9. #9
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Points : 733
    Points
    733
    Par défaut
    Ben voila je suis encore plus intelligent aujourd'hui MDR Tu viens de m'apprendre encore qqch c'est trop cool :p

    Et au cas ou tu saurais comment renvoyer plusieurs ligne avec cette FCT RECHERCHEH plusieurs lignes satisfaisant a la recherche, je pense qu'il ne retourne que la premiere sinon...

    Renvoyer une matrice de valeurs en quelques sortes, moi je me rapelle que j'ai du bricoller ma propre fct pour faire ca...
    N'oubliez pas de mettre le

  10. #10
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Désolé, Vesta, je n'utilise jamais RechercheV ni RechercheH, je crée une form et je fais tout ça par macro avec une feuille masquée contenant une bibliothèque de données que je peux modifier comme et quand je veux. Plus simple, plus facile à gérer, et en outre je prive les utilisateurs du plaisir de pouvoir la foutre en l'air

    A+

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

Discussions similaires

  1. [VBA-E] Calcul Automatique Date
    Par nono le golfeur dans le forum Excel
    Réponses: 7
    Dernier message: 03/04/2007, 16h38
  2. [VBA Excel] Calcul automatique
    Par trihanhcie dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 21/02/2007, 09h16
  3. [VBA-Excel] Calcul d'une formule avec une inconnue
    Par micwiss dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 23/10/2006, 16h04
  4. [VBA-E] calculs automatique sur une seule feuille
    Par repié dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/03/2006, 11h53
  5. [VBA-E] Copier une formule de calcul dans toute la ligne
    Par kernel57 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/12/2005, 18h18

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