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 :

Liste déroulante VBA [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2015
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2015
    Messages : 113
    Par défaut Liste déroulante VBA
    Bonjour à tous,

    Voici le contexte, 2 fichiers Excel, un contient le nom des salariés et le second sert à faire des demandes d'avance. Il s'avère que la liste des salariés évolue très fréquemment. Je souhaite donc créer une liste automatiquement à l'ouverture du fichier du personnel et de la récupérer dans le fichier d'avance.
    Dans le fichier d'avance j'ai fait la validation de cette liste "dynamique".
    Malheureusement, elle reste vide. Voici donc le code que j'ai mis à l'ouverture du fichier du personnel.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Sub Lst()
    Dim la As Integer
    Dim ls As Integer
     
    la = Workbooks("personnel.xlsm").Sheets("Salaires").Range("A65536").End(xlUp).Row
    ls = Workbooks("personnel.xlsm").Sheets("Liste").Range("A65536").End(xlUp).Row
     
     
    ActiveWorkbook.Sheets("Liste").Activate
    Workbooks("personnel.xlsm").Sheets("Liste").Range("A:A").Select
    Selection.Clear
     
    ActiveWorkbook.Sheets("Salaires").Activate
    ActiveWorkbook.Sheets("Salaires").Range("A2:A" & la).Select
    Selection.Copy
    ActiveWorkbook.Sheets("Liste").Range("A:A").PasteSpecial xlValue
    ActiveWorkbook.Sheets("Liste").Names.Add Name:="Salaries", RefersTo:="=Liste!A1:Als"
     
     
    End Sub
    Tout se passe "à priori" bien, la liste est créée mais lorsque je regarde dans le gestionnaire de noms, je vois bien qu'elle est vide. Je me dis que cela n'est pas la bonne syntaxe "RefersTo:="=Liste!A1:Als". Mais mes différentes tentatives sont restées infructueuses.
    J'ai essayé avec une boucle For mais j'ai une erreur sur la non définition du nom de la variable liste.additem...j'avoue que je bug là.

    Alors comment la remplir ?

    Merci d'avance pour toute vos suggestions.

    Cordialement,

    Fred

  2. #2
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Bonjour tu as plusieurs façons de faire

    ma suggestion serait de te faire une copie des tes salariés sur une feuille, puis d'en faire un tableau et de le nommer(très important de faire les deux). ensuite d'appeler dans la liste de validation ta liste par le nom que tu as donné

    va voir mon point de blog sur le sujet

    si tu as besoin de plus d'aide dis le

    Pas besoin de VBA sauf pour récupérer la liste à jour de tes salariés

    A+

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2015
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2015
    Messages : 113
    Par défaut Liste déroulante vba
    Bonjour Igloobel,

    En fait, c'est ce que je croyais avoir fait. Juste récupérer la liste des salariés, la copier sur une autre feuille et la nommer. Ceci juste pour avoir une liste à jour. Le reste, la validation est faite de façon classique, sans code.

    Y-a-t il des fautes dans ce code ou juste il ne sert à rien

    Peux-tu m'indiquer l'adresse de ton blog ?...c'est bon j'ai trouvé.

    Cordialement,

    Fred

  4. #4
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2015
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2015
    Messages : 113
    Par défaut Liste déroulante vba
    Yes,

    Merci pour tes infos. C'était en réalité encore plus simple. Il n'y a pas besoin de faire la moindre ligne de code, juste définir un nom sur la liste d'origine, même pas de copier/coller. Cela supporte les insertions ou les suppression de ligne.



    Merci

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

Discussions similaires

  1. Copier des cellules excel dans une liste déroulante vba
    Par Papillon34 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/01/2010, 16h03
  2. Liste déroulante VBA
    Par Papillon34 dans le forum Macros et VBA Excel
    Réponses: 33
    Dernier message: 18/01/2010, 08h38
  3. [XL-2003] Liste Déroulante VBA EXCEL 2003
    Par Alexandra 01 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/12/2009, 15h55
  4. Mettre nom table dans liste déroulante vba Excel
    Par Fred246 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/12/2009, 08h20
  5. Liste déroulante VBA
    Par GMmaurice dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/04/2008, 15h33

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