Accueil > > > COMBO MULTICOLONNES, LA PARFAITE SOLUCE
COMBO MULTICOLONNES, LA PARFAITE SOLUCE
Information sur la source
Description
c'est un simple combobox mais qui affiche plusieurs colonnes, j'ai deja trouver ce code sur ce site, mais en l'essayant ca ne fonctionner pas, alors j'ai realiser un petit tuning du code et maintenant ca fonctionne a merveille... - un simple combobox qui affiche les données d'une base de donnees dans plusieurs colonnes... 1/ - il faut tout simplement referencer la bibliotheque Microsoft Forms 2.0 Object Library, est travailler avec son combo box qu'il vous offre... 2/ - referencer la bibliotheque Microsoft ActiveX Data Objects Recordset 2.7 Library 3/ - referencer la bibliotheque Microsoft ActiveX Data Objects 2.7 Library avant de finir je dédie cette source a piwy... j'espere que ca vous plaira, laisser moi vos commentaire....
Source
- ******************** code a mettre dans le form ************************
- 'declaration des variables
-
- Dim RsMatiere As Recordset
- Dim RsClients As Recordset
- Public VClt As String
-
-
- Private Sub Form_Load()
-
- Set RsMatiere = New Recordset
- Set RsClients = New Recordset
-
- RsMatiere.Open "Select Filato,Cliente from Filato Group By Cliente,Filato", db_Cmde, adOpenStatic, adLockOptimistic
-
- RsClients.Open "Select [Code Client] from Clients ORDER BY [Code Client] ", db_Cmde, adOpenStatic, adLockOptimistic
-
-
- While RsClients.EOF = False
-
- Combo1.AddItem RsClients.Fields(0), 0
-
- RsClients.MoveNext
-
- Wend
-
- End Sub
-
- Private Sub ComboMatiere_GotFocus()
-
- Dim i As Integer
- Dim VClt As String
-
- ComboMatiere.Clear
- ComboMatiere.ListRows = 10
-
- VClt = Me.Combo1.Text
-
- If RsMatiere.State <> adStateClosed Then RsMatiere.Close
-
- RsMatiere.Source = "SELECT Filato,Colore,Partita, Cliente From Filato where Filato.Cliente = '" & VClt & "' Group By Cliente,Filato,Colore,Partita"
- RsMatiere.Open
-
- ComboMatiere.ColumnCount = 3
- ComboMatiere.ColumnWidths = 200
- i = 0
-
- While RsMatiere.EOF = False
-
- ComboMatiere.AddItem RsMatiere.Fields(0)
-
- ComboMatiere.Column(1, i) = RsMatiere.Fields(1)
- ComboMatiere.Column(2, i) = RsMatiere.Fields(2)
-
-
- i = i + 1
-
- RsMatiere.MoveNext
-
- Wend
-
- End Sub
-
- *******************************************************************
-
- ***************code a mettre dans le module de connexion****************
-
- '-------------------------------------------------------------------------------------------------------------------------
- 'déclarations du types de connection à utiliser.
- '-------------------------------------------------------------------------------------------------------------------------
-
- Public db_Cmde As New ADODB.Connection
-
- '-------------------------------------------------------------------------------------------------------------------------
- 'déclarations des recordsets.
- '-------------------------------------------------------------------------------------------------------------------------
-
- Global rs As Recordset
-
- Public Sub Main()
-
-
- Set db_Cmde = New Connection
-
-
- '*************************************************'
- '* Chaîne de Connexion à la Base De *'
- '*************************************************'
-
- db_Cmde.CursorLocation = adUseClient
- db_Cmde.Mode = adModeReadWrite
-
- db_Cmde.Open "PROVIDER=MSDataShape;Data PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Combo_multicolonnes\fil.mdb ;"
-
-
- Form1.Show
-
-
- End Sub
-
-
-
-
-
-
-
-
-
-
-
******************** code a mettre dans le form ************************
'declaration des variables
Dim RsMatiere As Recordset
Dim RsClients As Recordset
Public VClt As String
Private Sub Form_Load()
Set RsMatiere = New Recordset
Set RsClients = New Recordset
RsMatiere.Open "Select Filato,Cliente from Filato Group By Cliente,Filato", db_Cmde, adOpenStatic, adLockOptimistic
RsClients.Open "Select [Code Client] from Clients ORDER BY [Code Client] ", db_Cmde, adOpenStatic, adLockOptimistic
While RsClients.EOF = False
Combo1.AddItem RsClients.Fields(0), 0
RsClients.MoveNext
Wend
End Sub
Private Sub ComboMatiere_GotFocus()
Dim i As Integer
Dim VClt As String
ComboMatiere.Clear
ComboMatiere.ListRows = 10
VClt = Me.Combo1.Text
If RsMatiere.State <> adStateClosed Then RsMatiere.Close
RsMatiere.Source = "SELECT Filato,Colore,Partita, Cliente From Filato where Filato.Cliente = '" & VClt & "' Group By Cliente,Filato,Colore,Partita"
RsMatiere.Open
ComboMatiere.ColumnCount = 3
ComboMatiere.ColumnWidths = 200
i = 0
While RsMatiere.EOF = False
ComboMatiere.AddItem RsMatiere.Fields(0)
ComboMatiere.Column(1, i) = RsMatiere.Fields(1)
ComboMatiere.Column(2, i) = RsMatiere.Fields(2)
i = i + 1
RsMatiere.MoveNext
Wend
End Sub
*******************************************************************
***************code a mettre dans le module de connexion****************
'-------------------------------------------------------------------------------------------------------------------------
'déclarations du types de connection à utiliser.
'-------------------------------------------------------------------------------------------------------------------------
Public db_Cmde As New ADODB.Connection
'-------------------------------------------------------------------------------------------------------------------------
'déclarations des recordsets.
'-------------------------------------------------------------------------------------------------------------------------
Global rs As Recordset
Public Sub Main()
Set db_Cmde = New Connection
'*************************************************'
'* Chaîne de Connexion à la Base De *'
'*************************************************'
db_Cmde.CursorLocation = adUseClient
db_Cmde.Mode = adModeReadWrite
db_Cmde.Open "PROVIDER=MSDataShape;Data PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Combo_multicolonnes\fil.mdb ;"
Form1.Show
End Sub
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|