Remplir un combobox avec les données d'une table Access
3 réponses
HD
Bonjour,
Pour remplir un combobox d'après les données d'une base de donnée Access je
lis les données de la table que je mets sur une feuille Excel puis seulement
j'ajoute les données au combobox....
Do
ComboBox1.AddItem Cells(i, 2).Value
i = i + 1
Loop Until Cells(i, 1).Value = ""
Mais y'a-t-il un moyen beaucoup plus rapide qui me permetterais de remplir
directement le combobox à partir de la table de données sans passer par une
feuille Excel intermédiaire ? Quelque chose du style :
Do ComboBox1.AddItem Cells(i, 2).Value i = i + 1 Loop Until Cells(i, 1).Value = ""
Mais y'a-t-il un moyen beaucoup plus rapide qui me permetterais de remplir directement le combobox à partir de la table de données sans passer par
une
feuille Excel intermédiaire ? Quelque chose du style :
Pour tout table.dos de table combobox = table.dos
Merci d'avance pour votre aide -- @+ HD
Eric
Bonjour HD,
Soit une combobox nommée Combo1 et avec une référence au projet sur Microsoft AciveX Data Object 2.x Library
au chargement de ta feuille :
Private Sub Form_Load() Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim strsql As String, ConnectAccess As String ConnectAccess = "Provider=Microsoft.jet.oledb.4.0;" ' chemin et nom de la bd à modifier ConnectAccess = ConnectAccess & "Data Source=D:AppliVBACCESS-ADOPlumier.mdb" ' SQL à modifier strsql = "select distinct ville_client from tclient;" conn.Open ConnectAccess rs.Open strsql, conn, adOpenForwardOnly, adLockReadOnly, adCmdText While Not rs.EOF Combo1.AddItem rs(0) rs.MoveNext Wend rs.Close conn.Close Set rs = Nothing Set conn = Nothing End Sub
conviendrait-il ?
A+ Eric
HD a écrit :
Bonjour,
Pour remplir un combobox d'après les données d'une base de donnée Access je lis les données de la table que je mets sur une feuille Excel puis seulement j'ajoute les données au combobox....
Do ComboBox1.AddItem Cells(i, 2).Value i = i + 1 Loop Until Cells(i, 1).Value = ""
Mais y'a-t-il un moyen beaucoup plus rapide qui me permetterais de remplir directement le combobox à partir de la table de données sans passer par une feuille Excel intermédiaire ? Quelque chose du style :
Pour tout table.dos de table combobox = table.dos
Merci d'avance pour votre aide -- @+ HD
Bonjour HD,
Soit une combobox nommée Combo1 et avec une référence au projet sur
Microsoft AciveX Data Object 2.x Library
au chargement de ta feuille :
Private Sub Form_Load()
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strsql As String, ConnectAccess As String
ConnectAccess = "Provider=Microsoft.jet.oledb.4.0;"
' chemin et nom de la bd à modifier
ConnectAccess = ConnectAccess & "Data
Source=D:AppliVBACCESS-ADOPlumier.mdb"
' SQL à modifier
strsql = "select distinct ville_client from tclient;"
conn.Open ConnectAccess
rs.Open strsql, conn, adOpenForwardOnly, adLockReadOnly, adCmdText
While Not rs.EOF
Combo1.AddItem rs(0)
rs.MoveNext
Wend
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing
End Sub
conviendrait-il ?
A+
Eric
HD a écrit :
Bonjour,
Pour remplir un combobox d'après les données d'une base de donnée Access je
lis les données de la table que je mets sur une feuille Excel puis seulement
j'ajoute les données au combobox....
Do
ComboBox1.AddItem Cells(i, 2).Value
i = i + 1
Loop Until Cells(i, 1).Value = ""
Mais y'a-t-il un moyen beaucoup plus rapide qui me permetterais de remplir
directement le combobox à partir de la table de données sans passer par une
feuille Excel intermédiaire ? Quelque chose du style :
Soit une combobox nommée Combo1 et avec une référence au projet sur Microsoft AciveX Data Object 2.x Library
au chargement de ta feuille :
Private Sub Form_Load() Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim strsql As String, ConnectAccess As String ConnectAccess = "Provider=Microsoft.jet.oledb.4.0;" ' chemin et nom de la bd à modifier ConnectAccess = ConnectAccess & "Data Source=D:AppliVBACCESS-ADOPlumier.mdb" ' SQL à modifier strsql = "select distinct ville_client from tclient;" conn.Open ConnectAccess rs.Open strsql, conn, adOpenForwardOnly, adLockReadOnly, adCmdText While Not rs.EOF Combo1.AddItem rs(0) rs.MoveNext Wend rs.Close conn.Close Set rs = Nothing Set conn = Nothing End Sub
conviendrait-il ?
A+ Eric
HD a écrit :
Bonjour,
Pour remplir un combobox d'après les données d'une base de donnée Access je lis les données de la table que je mets sur une feuille Excel puis seulement j'ajoute les données au combobox....
Do ComboBox1.AddItem Cells(i, 2).Value i = i + 1 Loop Until Cells(i, 1).Value = ""
Mais y'a-t-il un moyen beaucoup plus rapide qui me permetterais de remplir directement le combobox à partir de la table de données sans passer par une feuille Excel intermédiaire ? Quelque chose du style :