PETIT JEU POUR LES EXPERTS

cs_Magalie63 Messages postés 24 Date d'inscription dimanche 22 mai 2005 Statut Membre Dernière intervention 19 novembre 2006 - 9 juin 2005 à 11:44
cs_moustachu Messages postés 1079 Date d'inscription jeudi 14 novembre 2002 Statut Membre Dernière intervention 1 janvier 2012 - 9 juin 2005 à 14:04
Bonjour, j'ai un petit souci. J'ai une liste donc les valeurs sont des numeros et des noms, que j'ai recuperer dans une base de donnée. Je ne peux connaitre les index qu'ont piris les differents items ajoutés au fur et a mesure. J'ai après l'un des numero et j'aimerai recuperer d'index de ce numero qui obligatoirement exite dans ma liste afin d'attribuer à listIndex cet index. Le code sera peut etre plus claire! A completer!:


Set ConBDD = New ADODB.Connection


Set rsConBDD = New ADODB.Recordset


strConnex = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Base de données\bts VIRLO.mdb"


Requête = "SELECT [EFFECTUER.NoEtudiant], NomEtudiant FROM ETUDIANT, EFFECTUER WHERE ETUDIANT.NoEtudiant=EFFECTUER.NoEtudiant AND NoDeplacement=" & numDepl


ConBDD.Open strConnex


rsConBDD.CursorLocation = adUseClient


rsConBDD.Open Requête, InfosModif, adOpenDynamic, adLockOptimistic, adCmdText




i = 0


If rsConBDD.EOF = False Then


rsConBDD.MoveFirst


End If


Do While rsConBDD.EOF = False


cboConducteur.AddItem rsConBDD![EFFECTUER.NoEtudiant]


cboConducteur.List(i, 0) = rsConBDD![EFFECTUER.NoEtudiant]


cboConducteur.List(i, 1) = rsConBDD!NomEtudiant






cboConducteur.ColumnWidths = "0;50"


rsConBDD.MoveNext


i = i + 1




Loop




ConBDD.Close




cboConducteur.Enabled = True


Label5.Enabled = True







Set InfosEtudiant = New ADODB.Connection


Set rsInfosEtudiant = New ADODB.Recordset


strConnex = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Base de données\bts VIRLO.mdb"


Query = "SELECT [EFFECTUER.NoEtudiant] From Etudiant, Effectuer Where Etudiant.NoEtudiant=Effectuer.NoEtudiant AND NoDeplacement=" & numDepl & " And Qualificatif='CONDUCTEUR'"


InfosEtudiant.Open strConnex


rsInfosEtudiant.CursorLocation = adUseClient


rsInfosEtudiant.Open Query, InfosEtudiant, adOpenDynamic, adLockOptimistic, adCmdText




cboConducteur.ListIndex = ????????
InfosEtudiant.Close

QUE REMPLACERAI ???????? pour que ça marche? Merci d'avance

6 réponses

cs_moustachu Messages postés 1079 Date d'inscription jeudi 14 novembre 2002 Statut Membre Dernière intervention 1 janvier 2012
9 juin 2005 à 13:17
Je comprends pas bien... tu alimentes ton combobox à l'aide d'une
requête puis tu voudrais te positionner sur un des éléments du combox
suivant le résultat d'une autre requête ?



Ta deuxième requête ne renvoie qu'un enregistrement ?

++
Moustachu
0
cs_Magalie63 Messages postés 24 Date d'inscription dimanche 22 mai 2005 Statut Membre Dernière intervention 19 novembre 2006
9 juin 2005 à 13:26
vi ma deuxieme requete renvoie un seul element parmis les element de la combo qui y ont été mis. le but est de faire apparaitre en tant qu'element choisi, l'element correspondant a ma requete! c'est a la base un formulaire en mode modification.concretement, mes etudiants rattachés a un déplacement ont un conducteur de désigné s'ils utilisent un vehicule personnel. je veux faire apparaitre, parmi les personne concerné par ce deplacement et connu par la combo, celui ki est le conducteur. en modif' il serai possible ainsi de choisir un autre conducteur parmi les personnes concerné. j'utiliserai ensuite l'index de ma personne choisit pour lui attitrer le qualificatif de conducteur dans ma base.
0
cs_moustachu Messages postés 1079 Date d'inscription jeudi 14 novembre 2002 Statut Membre Dernière intervention 1 janvier 2012
9 juin 2005 à 13:46
Le champ qualificatif , tu peux le récupéré dans ta première requete, non?



Requête = "SELECT
[EFFECTUER.NoEtudiant], NomEtudiant ,Qualificatif FROM ETUDIANT, EFFECTUER WHERE
ETUDIANT.NoEtudiant =EFFECTUER.NoEtudiant AND NoDeplacement=" &
numDepl




Ensuite, lorsque tu alimentes ton combobox, tu testes si

rsConBDD![EFFECTUER.Qualificatif]="
CONDUCTEUR
"

et tu sauvegarde l'index dans une variable.



A la fin de l'alimentation tu attribues l'index sauvegarder. Tu dois même pouvoir le faire pendant que tu alimentes ton combobox




++
Moustachu
0
cs_Magalie63 Messages postés 24 Date d'inscription dimanche 22 mai 2005 Statut Membre Dernière intervention 19 novembre 2006
9 juin 2005 à 13:50
ok merci. est ce possible cependant de recuperer d'index d'une des lignes?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Magalie63 Messages postés 24 Date d'inscription dimanche 22 mai 2005 Statut Membre Dernière intervention 19 novembre 2006
9 juin 2005 à 14:02
C'est bon ça marche nickel, ça me fais même enlever des lignes inutiles en plus. Merci!!!!
0
cs_moustachu Messages postés 1079 Date d'inscription jeudi 14 novembre 2002 Statut Membre Dernière intervention 1 janvier 2012
9 juin 2005 à 14:04
Pas simplement, c'est pour ça que je te propose une solution de
contournement. CE que tu dois faire c'est rechercher dans ta première
colonne le texte (ou une partie) par l'intermediaire de l'api
SendMessage

++
Moustachu
0
Rejoignez-nous