Bonjour,

J'ai une combobox qui récupère des valeur dans une base de données, mais je souhaiterai en faite que lorsque l'on l'on commence a saisir le nom d'une personne, s'affiche les personnes présente dans la base de données.
Je ne vois pas trop comment faire, j'ai tester avec un mais sa ne fonctionne pas.
Je ne sais plus trop comment chercher, n'y même s'il est possible de le faire en VBs.


PS: voici mon code VBs/HTA

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
 
<html>
	<head>
		<title>Envoide de Fax</title>
		<HTA:APPLICATION
							   ID="EnvoiFax"
							   APPLICATIONNAME="Envoide de Fax"
							   CAPTION="Yes"
							   BORDER="thick"
							   SHOWINTASKBAR="Yes"
							   SINGLEINSTANCE="Yes"
							   SYSMENU="Yes"
							   WINDOWSTATE="Normal"
							   SCROLL="No"
							   INNERBORDER="No"
							   SELECTION=""
							   MAXIMIZEBUTTON="No"
							   MINIMIZEBUTTON="NO"
							   NAVIGABLE="NO"
							   CONTEXTMENU="No"
							   BORDERSTYLE=""
							   ICON="fax.ico">
	</head>
 
	<script language="VBScript">
	ResizeTo 550,250 'Width,Height
	MoveTo 250,200 	 'Left,Top
'--------------------------------------------------------------------------------------------------------------------'
'-----------------------------------------------DEBUT-SCRIPT---------------------------------------------------------'
'--------------------------------------------------------------------------------------------------------------------'
	Sub Window_OnLoad
			Set objConnection = CreateObject("ADODB.Connection")
			Set objRecordset = CreateObject("ADODB.Recordset")
			'chaine de connexion
			objConnection.Open "DRIVER={MySql ODBC 5.1 Driver};SERVER=localhost;DATABASE=nomDB;UID=user;PASSWORD=password;"
			'requete sql
			strSQLQuery = "SELECT nom, numeroFax FROM personne"
			objRecordset.Open strSQLQuery , objConnection
			'on recupere tout les jeux d'enregistrement tant que celui-ci n'est pas arriver a la fin
			do while not objRecordset.EOF
				'on crée dans le select un champ option			
				Set objOption = Document.createElement("OPTION")
				'auquel on lui affecte comme texte le nom
				objOption.Text = objRecordset.Fields("nom").Value
				'et comme valeur correspondant au nom, le numero de fax
				objOption.value = objRecordset.Fields("numeroFax").Value
				'et on l'ajoute au selectbox
				personnel.Add(objOption)
				'puis on passe au jeux d'enregistrement suivant
				objRecordset.movenext
		     loop
			'on ferme la connexion
			objRecordset.Close
			objConnection.Close
	End Sub
		'------------------------------------------------------------------------------------------------'
		'-----------------------------------------DEBUT-ENVOI--------------------------------------------'
		'------------------------------------------------------------------------------------------------'	
 
 
Sub envoi
	'déclaration de la variable (file system object)
	Dim fso
	'instanciation
	Set FSO = CreateObject("Scripting.FileSystemObject")
	'on instance le fichier texte 
	Set Ftxt = FSO.OpenTextFile("C:\SMFAX\test.txt")
	'on parcours chaque ligne du fichier texte
	Do While Not Ftxt.AtEndOfStream
		 MaVariable = Ftxt.Readline
	      'code pour traiter chaque ligne (1seul dans ce cas la)
		a=Split(MaVariable ,";")
 
			If UBound(a) = 1 Then
	     	End If
	Loop
 
	' déclaration des variables
	Dim olapp
	Dim objet
	Dim corps
	Dim PJ
	Dim mail
	Dim oFSO, oFl, newnom
	Dim nbcontact
	Dim variable
 
	'affectation des valeurs aux variables	
	nom = tbx_nom.value
	destinataire = tbx_numeroFAX.value
	objet=(a(0))
	corps=(a(1))
	PJ=("C:\SMFax\FAX.pdf") 'Faire correspondre dans PdfCreator
	mail= destinataire &"@gmail.com"
 
	'si ereur alors on sort
	On Error Resume Next 
	'on instancie l'objet outlook
	Set olapp = GetObject("Outlook.Application") 
	If Err.Number Then
		Err.Clear
		'si outlook n'est pas ouvert, on l'ouvre
		Set olapp = CreateObject("Outlook.Application") 
		If Err.Number Then 
			MsgBox "Impossible d'ouvrir Outlook." 
		End If 
	End If 
	'on affecte les variables, aux differentes fonctionnailités du mail	  
	Set olMail = olapp.CreateItem(olMailItem) 
	'destinataire
	olMail.To = (mail) 
	'objet (expediteur)
	olMail.Subject = (objet) 
	'corps (password)
	olMail.Body = (corps)
	'pièce jointes (le PDF créé précédement avec pdf créator)
	olmail.Attachments.Add("C:\SMFax\FAX.pdf")
	'on envoi le mail
	olmail.send 
 
	Set olMail = Nothing 
	Set olapp = Nothing 
 
	'si erreur alors afficher message erreur
	If Err.Number <>0 Then
		MsgBox Err.Description,16,"Erreur"
	'sinon 
	Else
		'instanciation de la variable file system object
		Set oFSO = CreateObject("Scripting.FileSystemObject")
		'on recupere le PDF
		Set oFl = oFSO.GetFile("C:\SMFax\FAX.pdf")
		'on affecte a la variable newnom la date et l'heure
		newnom=day(Date()) & month(Date()) & year(Date()) & "_" & Hour(Time()) & "_" & Minute(Time())& "_" & second(Time())
		'on renome le PDF avec le nouveau nom (newnom)
		oFl.Move("C:\SMFax\"&newnom&".pdf")
 
		Set objConnection = CreateObject("ADODB.Connection")
		Set objRecordset = CreateObject("ADODB.Recordset")
		'chaine de connexion
		objConnection.Open "DRIVER={MySql ODBC 5.1 Driver};SERVER=localhost;DATABASE=nomDB;UID=user;PASSWORD=password;"
		'requete sql
		strSQLQuery = "SELECT COUNT( * ) FROM personne WHERE numerofax='"& destinataire &"'"
		objRecordset.Open strSQLQuery , objConnection
		'on recupere le resultat du nombre de jeu d'enregistrement dans la variable "nbcontact"
		nbcontact = objRecordset.Fields("COUNT( * )")
		'on ferme la connexion
		objRecordset.Close
		objConnection.Close
'MsgBox "count(*) = " & nbcontact
 
		'on verifie a quoi nb contact correspond "nbcontact"
		'soit "0" alors variable est vrai
		If ( nbcontact = "0" ) Then
			variable =  "True"
		'sinon variable est faux
		Else
			variable =  "False"
		End If
		'Si variable est vrai alors 
		If ( variable = "True") Then
	        	'chaine de connexion
	        	objConnection.Open "DRIVER={MySql ODBC 5.1 Driver};SERVER=localhost;DATABASE=nomDB;UID=user;PASSWORD=password;"
				'requete sql 1
				strSQLQuery1 = "INSERT INTO fax (cheminPJ, coderetour) VALUES('"& "C:\\SMFax\\"& newnom &".pdf" &"', '"&"envoyer"&"')"
				'requete sql 2
				strSQLQuery2 = "INSERT INTO personne (nom, numeroFAX) VALUES ('"& nom &"', '"& destinataire &"');"
				'execution de la requete sql 1
				objRecordset.Open strSQLQuery1 , objConnection
				'execution de la requete sql 2
				objRecordset.Open strSQLQuery2 , objConnection
				MsgBox "Fax envoyé."
				'on vide les champ des textbox
				tbx_numeroFAX.value= ""
				tbx_nom.value= ""
				'on ferme la connexion
				objRecordset.Close
				objConnection.Close
		'Si variable est faux
	    Else
	        	'chaine de connexion
	        	objConnection.Open "DRIVER={MySql ODBC 5.1 Driver};SERVER=localhost;DATABASE=nomDB;UID=user;PASSWORD=password;"
				'requete sql 3
				strSQLQuery3 = "INSERT INTO fax (cheminPJ, coderetour) VALUES('"& "C:\\SMFax\\"& newnom &".pdf" &"', '"&"envoyer"&"')"
				objRecordset.Open strSQLQuery3 , objConnection
 
				MsgBox "Fax envoyé."
				'on vide les champ des textbox
				tbx_numeroFAX.value= ""
				tbx_nom.value= ""
				'on ferme la connexion
				objRecordset.Close
				objConnection.Close
	    End If 
	End If
End Sub
		'------------------------------------------------------------------------------------------------'
		'-------------------------------------------FIN-ENVOI--------------------------------------------'
		'------------------------------------------------------------------------------------------------'
Sub ComboBoxChange
	'on affiche la valeur(numéro de fax) de la personne selectionner dans le textbox numeroFAX
	tbx_nom.value= ""
	tbx_numeroFAX.value = personnel.Value
End Sub
Sub OnClickButtonlectureCSV()
	'déclaration des variables
	Dim fso 
	Dim fCsv 
	Dim tb 
	Dim n
	Const ForReading = 1
	Set fso = CreateObject("scripting.filesystemobject")
	'on precise ou se trouve le fichier que l'on souhaite lire
	Set fCsv = fso.OpenTextFile("C:\gpi\gpi_fax.csv", ForReading)
	'tant que la lecture n'est pas a la fin 
	 While Not fCsv.AtEndOfStream
	 	'on coupe le texte à chaque "," (séparateur)
		tb = Split(fCsv.ReadLine, ",")
		'on precise qu'il y a 12 virgules (nombre precis puisque déterminé par la génération du .csv par GPI
		If UBound(tb) = 12 Then
			'fonction qui permet de supprimer le zero du standard
			n = Mid (tb(5), 2)	
			'on remplis nos textbox par les valeur que l'on souhaite
			tbx_nom.value =  tb(0)
			tbx_numeroFAX.value = n
 
		End If
	Wend 
End Sub
'--------------------------------------------------------------------------------------------------------------------'
'-------------------------------------------------FIN-SCRIPT---------------------------------------------------------'
'--------------------------------------------------------------------------------------------------------------------'
	</script>
 
	<body bgcolor="#bfccdf">
 
			<p><font color="red" size="4px"><b>Veuillez saisir un numero de fax ou le selectionner dans la liste</b></font></p>
 
			<p>Nom :&nbsp;&nbsp; <input id="tbx_nom" type="text" name="tbx_nom" style="width:130px"/>&nbsp;&nbsp;&nbsp;&nbsp;
			Numéro de fax :&nbsp;&nbsp; <input id="tbx_numeroFAX" type="text" name="tbx_numeroFAX" style="width:130px"/></p>
 
			<p>Nom :&nbsp;&nbsp; <select name="personnel"onchange="ComboBoxChange()" style="width:130px"/></select></p>
 
			<p><input type="button" name="lectureCSV" id="lectureCSV" value="GPI FAX" onclick="OnClickButtonlectureCSV" style="width:130px" align="center"></p>
			<p align="right"><input id="btn_envoyer" type="button" value="envoyer" onclick="envoi" style="width:130px"/></p>
</select>
</body>
</html>
Merci