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 :

Problème d'execution d'une formule VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2013
    Messages : 13
    Par défaut Problème d'execution d'une formule VBA
    Bonjour à toutes et à tous

    Voila je suis en train de concevoir une macro dans le cadre de mon stage de fin d'année et je suis bloqué sur un point qui à mon avis doit être tout bête mais je suis dessus depuis 4 heures et impossible d'y arriver

    J'ai une feuille sur lequel je fais une recherchev a partir d'une autre feuille nommée ZEM1

    La macro fonctionne jusqu’ici et je n'ai aucun message d'erreur. Le problème c'est que la formule ne s’exécute pas. J'obtiens seulement ça sur toute les lignes concernées: "=RECHERCHEV(B2;ZEM1!A:B;2;faux)

    Voici le morceau de code qui est censé faire exécuté la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    i = Range("B" & Rows.Count).End(xlUp).Row
        Range("C2").FormulaLocal = "=RECHERCHEV(B2;ZEM1!A:B;2;faux)"
        Range("C2").Copy Range("C2:C" & i)

    Si une bonne âme pouvait me montrer d’où vient mon erreur ce serait youpi

  2. #2
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Ton code est correct. Regarde si tes cellules ne sont pas au format texte.

    Cordialement.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2013
    Messages : 13
    Par défaut
    Bonsoir gFZT82

    Non même en convertissant la colonne C en standard, j'ai toujours la formule entière qui s'affiche

  4. #4
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Tu peux effectuer cette vérification :
    Bouton Office / Options Excel
    Options avancées /Afficher les options pour cette feuille de calcul
    L'option "Formules dans les cellules au lieu de leurs résultats calculés" doit être décochée.

    Cordialement.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2013
    Messages : 13
    Par défaut
    Bonjour gFZT82

    Je suis aller vérifier et la case concernée était bien décochée. Ça me fait toujours le même problème. Je met ci-joint un petit exemple.

    Cordialement.
    Fichiers attachés Fichiers attachés

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 169
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Ton problème vient bien du fait que les cellules de la colonne où tu veux placer ta formule est au format texte.
    Si tu modifies son format avant d'enclencher la procédure, tu n'auras pas de problème.
    C'est un problème que j'ai déjà rencontré et qui est extrêmement agaçant.
    Tu peux aussi faire précéder la ligne de ton code par le formatage de la cellule au mode "Général"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Range("C2").NumberFormat = "General"
    Range("C2").FormulaLocal = "=RECHERCHEV(B2;ZEM1!A:B;2;faux)"
    Ou en variante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("C2").NumberFormat = "0"
    Pour éviter un problème de compatibilité avec des versions anglaises ou autres, je privilégierais la propriété Formula
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("C2").Formula = "=VLOOKUP(B2,ZEM1!A:B,2,FALSE)"
    Et je préciserais aussi dans mon code l'objet feuille et classeur cela éviterait l'emploi de la méthode Activate.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub recherchev()
    'Sheets("EM").Activate
     With ThisWorkbook.Sheets("EM")
      i = .Range("B" & Rows.Count).End(xlUp).Row
     .Range("C2").NumberFormat = "0"
     .Range("C2").Formula = "=VLOOKUP(B2,ZEM1!A:B,2,FALSE)"
     .Range("C2").Copy .Range("C2:C" & i)
     End With
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

Discussions similaires

  1. [AC-2007] Problème de syntaxe pour une formule SQL en VBA
    Par franckimmo dans le forum IHM
    Réponses: 4
    Dernier message: 12/02/2010, 10h54
  2. [XL-2002] Problème de syntaxe sur une formule dans VBA
    Par beber_le_stagiaire dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/06/2009, 15h32
  3. Réponses: 6
    Dernier message: 20/06/2006, 14h49
  4. Problème d'execution d'une fonction
    Par 12_darte_12 dans le forum Général JavaScript
    Réponses: 22
    Dernier message: 17/03/2006, 11h37
  5. problème de guillemets dans une formule shell
    Par dim_italia dans le forum VBA Access
    Réponses: 7
    Dernier message: 18/08/2003, 12h46

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