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
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