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 :

Combobox d'une feuille en vba excel [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 70
    Par défaut Combobox d'une feuille en vba excel
    Bonjour,
    Tout est dans le titre.
    J'ai un combobox situé sur une feuille "Feuil1" . Je veux aller dans la feuille"Feuil2" de mon fichier aspirer les données pour alimenter la liste de mon combobox.
    Comment faire ? je n'y arrive pas.

    Je sais parfaitement comment le faire si mon combobox se trouve dans un userform.

    Mais le cas actuel, le combobox est directement dans le fichier.

    Un grand merci par avance pour votre aide.

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    Pour alimenter une combobox en liant avec les données saisies dans une feuille

    Dans un userform
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Combobox1.RowSource = "Feuil1!A1:A10"
    Dans un onglet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Combobox1.ListFillRange = "Feuil1!A1:A10"

    Dans les 2 cas on peut aussi utiliser la propriété AddItem

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 70
    Par défaut
    d'abord pour vos propositions
    c'est quoi la propriété Additem? comment l’intégrer dans mon programme ci-dessous?
    alors j'ai voulu intengrer le code mais cela ne fonctionne. comment faire?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub ComboBox1_Change()
     
    ComboBox1.ListFillRange = "Admin_Systemes!A1:A10"
     
    End Sub

  4. #4
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Ce n'est pas dans le bon évènement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub UserForm_Initialize()
    Ou directement en modifiant la propriété de l'objet dans la fenêtre propriété de VBA

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 70
    Par défaut
    j'ai intergré comme convenu mais cela ne fonctionne tjrs pas.
    Je vous mets mon fichier en Pièce jointe pour que vous puissiez tester par vous-même.

    cordialement
    Fichiers attachés Fichiers attachés

  6. #6
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Désolé, ma précédente réponse correspondait à un Userform

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_Activate()
    ComboBox1.ListFillRange = "Admin_Systemes!A1:A10"
    End Sub

  7. #7
    Membre Expert
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Par défaut
    Bonjour,

    Pour alimenter une combo avec des données d'une autre feuille, il existe la "validation de données" qui permet de faire ça.

    Données => Validation => autoriser Liste => Nom de la plage de données

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 70
    Par défaut
    pc75, je veux le faire par vba non par manipulation.

    jfontaine, j'ai copié ton programme et colle sur vbaprojet de la feuille contenant le combobox et j'ai activé le combobox, aucune liste n’apparaît.
    par la suite j'ai esssayé en collant le code dans un module, aucune changement de la liste
    en mettant également sur thisworkbook, tjrs pas d'usure positive.
    Pouvez le faire dans le fichier que je vous ai envoyé s'il vous plaît? et me l'envoyer?

    merci

    j'ai trouvé ce code sur le net et j'ai voulu adapter à ma sauce malheuresemnt je ne parviens tjrs pas à recuperer les données de la feuille Admin_systemes pour faire la liste de mon combobox se trouvant dans la feuille Feuil1

    merci


    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
    Private Sub ComboBox1_Change()
     
     
    End Sub
     
     
     
    Private Sub Worksheet_Activate()
        Dim Cell As Range
        Me.ComboBox1.Clear
        With Sheets("Admin_Systemes")
            For Each Cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
                Me.ComboBox1.AddItem (Cell)
            Next
        End With
    End Sub

  9. #9
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Le code étant dans l’évènement Activate de l'onglet, il faut sortir et entrée dans ce dernier pour que le code s’exécute

    combobox (1).xls

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 70
    Par défaut
    Jerome,
    je vais passer pour une bete mais je ne comprends toujours comment vous avez vous fait? qu'avez vous exactement fait de plus ? Pourquoi ici, je n'utilise pas

    désole si ma question vous semble bête. J'ai besoin de comprendre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub ComboBox1_Change()
     
    End Sub

  11. #11
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    On met dans l’évènement Change les actions a faire quand on change la valeur choisie dans la combobox (F1 sur l’évènement pour l'aide)

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

Discussions similaires

  1. Problème pour réinitialiser une feuille graphique d'excel avec VBA
    Par karatetiger76 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/05/2011, 22h51
  2. ajouter un combobox dans une feuille excel
    Par kariyasan dans le forum ASP.NET
    Réponses: 2
    Dernier message: 17/04/2009, 14h58
  3. Mettre la valeur d'une combobox dans une feuille Excel
    Par biche1 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/10/2008, 13h56
  4. Comment extraire les selections d'une combobox vers une feuille excel
    Par froggyaz dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 22/09/2008, 16h58
  5. [VBA-E] Vider une combobox sur une feuille
    Par yogyx dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 23/03/2007, 17h19

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