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 :

Résultat inattendu lors enregistrementMacro - création liste déroulante


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut Résultat inattendu lors enregistrementMacro - création liste déroulante
    Bonjour à tous,
    Je suis en train d'essayer d'automatiser la création de mes listes déroulantes pour ensuite pouvoir les conditionner (entre listes déroulantes). C'est un autre sujet !

    J'ai donc joué ma manipulation (Données --> Validation --> liste --> Valeur1;Valeur2;Valeur3) en enregistrant une macro.

    Quand je récupère le code généré pour l'insérer dans ma macro perso, je n'obtiens pas le même résultat. Au lieu d'avoir mes valeurs l'une en dessous de l'autre, j'ai une seule ligne avec la valeur "Valeur1;Valeur2;Valeur3". Si je ferme Excel et je le réouvre, comme par magie la liste est parfaite.

    Savez-vous d'où cela peu venir ? Il y a une sorte de refresh à faire ? ....

    Merci d'avance

    P.S
    Je suis sur Excel 2010

  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,

    Avec Excel 2007, je constate le même « phénomène ».
    Le problème disparait en remplaçant les ";" par des "," dans la ligne de code issu de l’enregistreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Formula1:="Valeur1,Valeur2,Valeur3"
    C’est un constat, pas une explication .

    Cordialement.

  3. #3
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    voici, l'explication, indépendante de la version

    Influence des séparateurs décimal et listes FR/US sur l’enregistreur de macro

    cordialement,

    Didier

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut
    Merci de vos réponses aussi rapide.
    J'ai remplacé les ; par des , et tout fonctionne !

  5. #5
    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 Ormonth,

    Ce qui me surprend dans ce cas, c’est que le code issu de l’enregistreur ne fonctionne pas sans aménagement.
    Après enregistrement, je m’attendais à voir la formulation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Formula1:="Valeur1,Valeur2,Valeur3"
    Je m’explique par analogie : si j’effectue l’enregistrement de la formule , je vais obtenir le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "=MOD(125,6)"
    La conversion ";" en "," est faite automatiquement et je peux utiliser directement le code, la réciproque étant vrai (traduction des "," en ";").
    Mais pour la liste de validation, ce n’est pas le cas …
    Je vais peut-être attendre que ça murisse un peu pour ne pas risquer une hernie cérébrale !

    Cordialement.

  6. #6
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonsoir,

    Le fil invoqué se reporte très précisément au comportement de l'enregistreur de macro par rapport aux MFC.

    Le pourquoi par rapports aux autres comportements n'est pas évoqué et seuls les développeurs Microsoft pourraient l'évoquer.

    L'important est de le savoir et d'en renseigner une base de connaissance.

    cordialement,

    Didiier

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

Discussions similaires

  1. Création liste déroulante
    Par settoken dans le forum Langage
    Réponses: 2
    Dernier message: 12/09/2009, 10h16
  2. Création liste déroulante en javascript pour adobe livecyrcle
    Par mad000 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 24/07/2009, 14h57
  3. [PEAR][HTML_QuickForm] Résultat d'une requête dans liste déroulante
    Par Lotharzco dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 04/04/2008, 08h45
  4. Limiter les résultats d'une zone de liste déroulante (requête)
    Par Tipstitou dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 11/02/2008, 11h01
  5. Réponses: 1
    Dernier message: 17/06/2007, 10h10

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