begin process at 2012 02 13 23:13:19
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Control

 > COMBO MULTICOLONNES, LA PARFAITE SOLUCE

COMBO MULTICOLONNES, LA PARFAITE SOLUCE


 Information sur la source

Note :
Aucune note
Catégorie :Control Niveau :Initié Date de création :22/06/2004 Vu / téléchargé :5 587 / 1 103

Auteur : Acidburns

Ecrire un message privé
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
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













 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source avec Zip COMMUNICATION MODBUS MASTER par sergelapointe
Source avec Zip Source avec une capture DÉPLACEMENT AVEC FLÈCHES DANS UN PAVÉ DE TEXTBOX 9X9 DYNAMIQ... par EhJoe
Source avec Zip Source avec une capture Source .NET (Dotnet) CONTROLSTARS EN RÉPONSE À JAKNIGHT007 par bigboss9
Source avec Zip Source avec une capture Source .NET (Dotnet) CALENDRIER ANNUEL NORME ISO par Prog1001
Source avec Zip Source avec une capture Source .NET (Dotnet) CONTROLE STARS par jaknight007

Commentaires et avis

Commentaire de ITALIA le 22/06/2004 10:54:09

Vraiment représentatif de ton programme cette Capture !!

Commentaire de Mindiell le 22/06/2004 15:01:11

N'empeche que cette grnouille a une super bouille ;o)

Commentaire de celiphane le 22/06/2004 17:12:26

pas top pour le déploiement aussi :(

@+
Celiphane

Commentaire de IdhaoBlue le 23/06/2004 09:41:54

Je n'ai que Microsoft ActiveX Data Objects Recordset 2.5 dans les references de mon projet. Comment puis je passer à Microsoft ActiveX Data Objects Recordset 2.7 ? (comment mettre à jour). merci

Commentaire de BOB33 le 24/06/2004 04:32:21

Salute

Cool ton  combo...

Petite blem de déburant, peu tu renseigner Mercie

exemple: ma base a 3 colonnes NON, PRENON, ADRESSE.

mon comboBox affiche tous les NON, la pas de blem.

une foie que je séléctionne un NON dans la comboBox , je voudrais quille maffiche la ligne du Non des 3 colonnes dans 3 texteBox aproprier, Txt_NON, Txt_PRENON, Txt_ADRESSE.

Mercie

Bonne Prog à tous @ +++

Commentaire de frop01 le 10/02/2005 20:31:21

:) Très utile !! Merci

Commentaire de acrcorp le 05/03/2005 12:27:57

La capture ne donne pas une idée sur ce que cela donne, c'est bien dommage pour un truc d'IHM...
(je comprends l'intérêt comique de la grenouille mais bon, ça fait chié d'être obliger de DL pour voir).

Commentaire de tbbuim1 le 27/03/2005 14:18:18

Petite précision pour ceux qui n'ont pas trouvé le Microsoft Form 2.0 library.
Faites parcourir sur le fichier FM20.dll de votre system32

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,917 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales