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 :

Mise a jour combobox [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2011
    Messages : 202
    Points : 276
    Points
    276
    Par défaut Mise a jour combobox
    Bonjour,

    avec mon usf conçu pour la gestion des salariés, j'ai un pb avec ma combobox car si j'inscris un nouveau salarié (ajouter dans la premiere ligne vide de base de données le plus normalement) ma combobox1 qui doit me donner tous les identifiants de la colonne "A" ne se mets pas a jour, et je ne sais comment résoudre ce pb.

    je vous remercie d'avance
    Cordialement

    Gestionnaire rh

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonjour
    Une idée: Quand tu inscris ton nouveau salarié, re lance le code qui remplit ta combobox.
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  3. #3
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2011
    Messages : 202
    Points : 276
    Points
    276
    Par défaut
    Bonjour mercatog,

    je vous remercie pour votre réponse rapide, mais comment faire pour relancer le code (comment faire pour relancer Private Sub UserForm_Initialize(), ou Private Sub ComboBox1_Change()), parce que je pense et je n'ai pas beaucoup de connaissances qu'il faut rafraîchir ou plus tôt actualiser l'instruction combobox1.additem.
    Cordialement

    Gestionnaire rh

  4. #4
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    C'est pas Private Sub UserForm_Initialize en entier qu'il faudarit relancer, mais seulement la partie du code qui nous interesse.
    Mats ici notamment les code pour Private Sub UserForm_Initialize et pour écrire ta nouvelle ligne sur la feuille.
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  5. #5
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2011
    Messages : 202
    Points : 276
    Points
    276
    Par défaut
    Bonjour,

    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
    Private Sub UserForm_Initialize()
    Dim col As Byte
     
    For col = 1 To 30
    Me.Controls("Label" & col).Caption = Cells(6, col)
    Next col
     
    With Sheets("liste du personnel")
    For y = 7 To .Range("a65536").End(xlUp).Row
            ComboBox1.AddItem
            ComboBox1.List(ComboBox1.ListCount - 1, 0) = .Cells(y, 1)
            ComboBox1.List(ComboBox1.ListCount - 1, 1) = y
        Next y
    End With
     
    Me.Width = ScreenWidth * PointsPerPixel
    Me.Height = ScreenHeight * PointsPerPixel
    MultiPage1.ForeColor = vbBlack
     
    End Sub
    Cordialement

    Gestionnaire rh

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Bonsoir ..

    tu extrait les lignes 8 a 14 qui remplissent ta combo et tu les déplace dans une nouvelle procédure :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Private sub MiseAjourCombo() 'A toi de mettre un nom plus parlant
    ComboBox1.clear 'Ajout d'une ligne pour effacer le précédent contenu
    With Sheets("liste du personnel")
    For y = 7 To .Range("a65536").End(xlUp).Row
            ComboBox1.AddItem
            ComboBox1.List(ComboBox1.ListCount - 1, 0) = .Cells(y, 1)
            ComboBox1.List(ComboBox1.ListCount - 1, 1) = y
        Next y
    End With
    End sub
    Dans ton code d’initialisation tu remplace les ligne 8 à 14 par un appel à la sub :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    (...)
    Next col
     
    MiseAjourCombo
     
     
    Me.Width = ScreenWidth * PointsPerPixel
    (...)
    Il te reste ensuite à rajouter un appel à ta procédure lors de toutes modifications..

  7. #7
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2011
    Messages : 202
    Points : 276
    Points
    276
    Par défaut
    Bonjour bbil,

    c'est impeccable, mon pb est résolu et j'ai même appris des choses aujourd'hui encore merci pour votre aide.

    Cordialement

    Gestionnaire_rh
    Cordialement

    Gestionnaire rh

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/08/2010, 12h10
  2. Combobox et mise a jour
    Par Anaxagore dans le forum Windows Forms
    Réponses: 6
    Dernier message: 21/03/2009, 21h38
  3. Mise à jour combobox
    Par fetsa054 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 14/03/2009, 12h59
  4. Probleme de mise à jour combobox
    Par icicmoi dans le forum Composants
    Réponses: 2
    Dernier message: 05/09/2008, 13h56
  5. Mise à jour ComboBox
    Par ftcalvados dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 10/01/2008, 14h42

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