Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[Résolu]Probléme valeurs dans combobox de userform

GUYANAIS

XLDnaute Occasionnel
Bonjour,
J'ai un userform qui récupère des données dans une feuille X et qui est déclenché depuis une autre feuille A. Je n'arrive pas à le synchroniser.
Le userform se déclenche sur la feuille factures_rappr et récupère les donnée de la feuille BDD. Le userform s'affiche mais dans le combobox je n'arrive pas à faire apparaître les valeurs de la ligne de la feuille BDD. Le code qui va avec et le fichier ci dessous en pièce jointe pour l'exemple
Code:
Private Sub ComboBox_Champ_valeur_Change()
'Zone de liste vidée
ListBox_valeur_champ.Clear
Dim no_colonne As Integer, nb_lignes As Integer
'Numéro de la selection de colonne (list commence à 0) :
no_colonne = ComboBox_Champ_valeur.ListIndex + 1
'Nombre de lignes de la colonne du champ choisi
nb_lignes = Cells(1, no_colonne).End(xlDown).Row
For i = 2 To nb_lignes '=>pour lister les valeurs dans les colonnes
    ListBox_valeur_champ.AddItem Cells(i, no_colonne)
Next
End Sub

Private Sub ListBox_valeur_champ_Click()
TextBox_choix.Value = ListBox_valeur_champ.Value
End Sub

Private Sub UserForm2_Initialize()
'permet de selectionner un entete de colonne de la BDD pour faire une recherche ici de 1 à 8eme colonne
    For i = 1 To 8 '=> pour lister les entetes de colonne de la BDD
      ComboBox_Champ_valeur.AddItem Cells(1, i) 'Ajoute les valeurs
    Next
'Affiche les valeurs trouvés dans le resultat de la selection:
With ListView1
        .Gridlines = True 'affiche les lignes
        .View = Lvw.Report 'style de rapport
        .FullRowSelect = True 'Permet de seletionner une ligne dans la liste
        'nomme les entêtes et défini les largeurs
        ColumnHeaders.Add Text:="Date enregistrment ", Whidth:=40
        ColumnHeaders.Add Text:="Numéro facture ", Whidth:=40
        ColumnHeaders.Add Text:="Appelation facture ", Whidth:=40
        ColumnHeaders.Add Text:="Noms ", Whidth:=40
        ColumnHeaders.Add Text:="Code unité ", Whidth:=40
    Call Actualisation_usf2 'on apelle le remplissage
End With
End Sub

Private Sub Actualisation_usf2()
'Déclaration des variables
Dim Item As ListItem
Dim DerniereLigne As Integer
Dim i As Integer
Dim Ws1 As Worksheet

Set Ws1 = ThisWorkbook.Sheets("BDD")
DernièreLigne = Ws1.Cells(Row.Counts, 1).End(xlUp).Row 'on cherche la dernière ligne de la base feuil4(BDD) de la colonne 1

With Me.ListView1
    .ListItems.Clear 'On vide avant chaque rechargement
    'On boucle toutes les lignes et on charge les infos
    For i = 9 To DerniereLigne
        'On affiche dans le list view les contenu des données
        .ListItems.Add , , Feuil4.Cells(i, 1)
        .ListItems(.ListItems.Count).ListSubItems.Add , , Feuil4.Cells(i, 2)
        .ListItems(.ListItems.Count).ListSubItems.Add , , Feuil4.Cells(i, 3)
        .ListItems(.ListItems.Count).ListSubItems.Add , , Feuil4.Cells(i, 8)
        .ListItems(.ListItems.Count).ListSubItems.Add , , Feuil4.Cells(i, 13)
    Next i
End With
End Sub
 

Pièces jointes

  • Visuel_23_08_2017.xlsm
    175.2 KB · Affichages: 31

ChTi160

XLDnaute Barbatruc
Bonjour GUYANAIS
Bonjour le Fil ,Le Forum
tout d'abord
Beaucoup d'erreurs dans le code , Pas de variables déclarées etc etc !!!
je n'ai pas compris le pourquoi de cette recherche et la méthode employée ???
j'ai modifié ce que j'ai cru bon de Modifier "Voir Fichier joint".
Bonne continuation
Amicalement
Jean marie
 

Pièces jointes

  • Visuel_23_08_2017-Chti160.xlsm
    175 KB · Affichages: 27

GUYANAIS

XLDnaute Occasionnel
Oups!!
J'ai oublié ce fil de discussion? J'en suis vraiment désolé, je me creuse pas mal la tête pour arriver à faire mon outil et je perd le fil de moi même.
Merci beaucoup Jean Marie pour ce que tu as fais, Il a fallu que je comprenne le code mais j'ai progresser.
Je suis encore désolé d'avoir oublié ce topic, je vais le fermer pour ne plus y revenir. Je vais rester sur l'autre.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…