Dans un userfom utilisation de combobox pour tri base de données excell 2003

Résolu
kikivba Messages postés 4 Date d'inscription dimanche 24 décembre 2000 Statut Membre Dernière intervention 23 octobre 2008 - 23 oct. 2008 à 14:45
kikivba Messages postés 4 Date d'inscription dimanche 24 décembre 2000 Statut Membre Dernière intervention 23 octobre 2008 - 23 oct. 2008 à 15:12
Bonjour,
J'essaie de créer une application qui me permettrai de consulter ma bases de donnée et la trier en vba de la même façon que les filtres automatiques.
Dans un userform je placé 4 combobox et je souhaiterai qu'ils réagissent comme des critères de tri tel que par exemples, si je selectione un nom dans une des listes de mes combo que j'ai nomé avec la fonction DECALER, automatiquement mes autres combo se rempliraient pour me proposer d'autres critères liés à ce nom. 
Ceci afin de récupérer dans un autre userfomr le seul resutat possible.
Voici le code remplissage de mes combobox:

Private Sub UserForm_Initialize()
UsfMenu.Hide
Workbooks("BASES A.T 2008VBA.xls").Activate 'pour le cas ou plusieurs classeurs sont ouverts
 Dim i As Integer


For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row 'rempli mes combo et retire les doublons
  CboNom = Sheets("BDF").Range("B" & i)
  If CborEF.ListIndex = -1 Then CborEF.AddItem Sheets("BDF").Range("B" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboNom = Sheets("BDF").Range("B" & i)
  If CboNom.ListIndex = -1 Then CboNom.AddItem Sheets("BDF").Range("B" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboType = Sheets("BDF").Range("B" & i)
  If CboType.ListIndex = -1 Then CboType.AddItem Sheets("BDF").Range("B" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboDate = Sheets("BDF").Range("B" & i)
  If CboDate.ListIndex = -1 Then CboDate.AddItem Sheets("BDF").Range("B" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboServ = Sheets("BDF").Range("B" & i)
  If CboServ.ListIndex = -1 Then CboServ.AddItem Sheets("BDF").Range("B" & i)
Next i




End Sub

Merci pour votre aide

1 réponse

kikivba Messages postés 4 Date d'inscription dimanche 24 décembre 2000 Statut Membre Dernière intervention 23 octobre 2008
23 oct. 2008 à 15:12
Bonjour,
J'apporte une modif à ce code qui ne fonctionnait pas correctement car toutes mes combo faisaientt référence à la même colonne de ma base de donnée.

Private Sub CboDate_Change()
CboDate.Value = Format(CboDate.Value, "dd/mm/yyyy")
End Sub


 




Private Sub UserForm_Initialize()
UsfMenu.Hide
Workbooks("BASES A.T 2008VBA.xls").Activate 'pour le cas ou plusieurs classeurs sont ouverts
 Dim i As Integer


For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row 'rempli mes combo et retire les doublons
  CborEF = Sheets("BDF").Range("A" & i)
  If CborEF.ListIndex = -1 Then CborEF.AddItem Sheets("BDF").Range("A" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboNom = Sheets("BDF").Range("B" & i)
  If CboNom.ListIndex = -1 Then CboNom.AddItem Sheets("BDF").Range("B" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboType = Sheets("BDF").Range("H" & i)
  If CboType.ListIndex = -1 Then CboType.AddItem Sheets("BDF").Range("H" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboDate = Sheets("BDF").Range("N" & i)
  If CboDate.ListIndex = -1 Then CboDate.AddItem Sheets("BDF").Range("N" & i)
Next i
For i = 1 To Sheets("BDF").Range("A65536").End(xlUp).Row
  CboServ = Sheets("BDF").Range("G" & i)
  If CboServ.ListIndex = -1 Then CboServ.AddItem Sheets("BDF").Range("G" & i)
Next i




End Sub
Mille excuses
En prime je vous indque le code qui affiche correctement les dates
3
Rejoignez-nous