cs_jpp81
Messages postés32Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention25 novembre 2009
-
5 déc. 2006 à 06:30
cs_jpp81
Messages postés32Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention25 novembre 2009
-
6 déc. 2006 à 06:29
bonjour,
je séche lamentablement
Une base acces 97, une table [ILOTS], 4 Champs
_NoIlot champs numerique entier long
_NomIlot champs texte
_Surface Champs numerique entier long
_Culture Champs texte
Voila pour la base
Je cree un projet sous vb 4 pro avec
1 form Form1
1 combo CmbNonIlot
1 text box Text1
Dans le formload je tape
Private Sub Form_Load()
Dim base As String
base = "INTRANTS.mdb"
Dim a As Variant
'remplir la liste des ilots
Dim db As Database
Dim rsc As Recordset
Dim SQLC As String
SQLC = "SELECT [NomIlot] FROM [ILOTS]"
Set db = Workspaces(0).OpenDatabase(base)
Set rsc = db.OpenRecordset(SQLC, dbOpenDynaset)
If rsc.RecordCount = 0 Then
MsgBox " Vous devez remplir la Fiche des Ilots"
Exit Sub
End If
rsc.MoveFirst
a = rsc![NomIlot]
Do Until rsc.EOF
a = rsc![NomIlot]
CmbNonIlot.AddItem a
rsc.MoveNext
Loop
rsc.MoveFirst
rsc.Close
db.Close
End Sub
Dans clic du combo je tape
Private Sub CmbNonIlot_Click()
Dim base As String
base = "INTRANTS.mdb"
Dim db As Database
Dim critere As String
critere = CmbNonIlot
Dim rsSurf As Recordset
Dim SQLSurf As String
SQLSurf = " SELECT [Surface] FROM [ILOTS] " _
& " WHERE [NomIlot] = " & CmbNonIlot & ";"
Set db = Workspaces(0).OpenDatabase("INTRANTS.mdb")
Set rsSurf = db.OpenRecordset(SQLSurf, dbOpenDynaset)
rsSurf![Surface] = Text1.Text
rsSurf.Close
End Sub
Si je lance, le combo se rempli mais au premier clic qui doit m'afficher dans
Text1 la surface de l'ilot que j'ai selectionne dans le combo, j'ai droit a "Trop peu
de parametre.1 parametre manquant"
La base est bonne, la sql est bien sur le nom de l'ilot du combo,les noms de champs
dans la base et le prog sont correct et le compil s'arrete sur le set rsSurf.
Qu'est-ce que j'oublie????
Merci d'avance pour vos réponses.
jpp
domsig
Messages postés125Date d'inscriptionlundi 6 septembre 2004StatutMembreDernière intervention11 mai 2010 5 déc. 2006 à 07:55
bonjour
je suis pas sûr mais il me semble qu'il manque dans ton combo le premier élément de ta table (puisque tu fais un rsc.MoveFirst puis a = rsc![NomIlot] sans additem.)
Ta requête ne me semble pas correcte, essaie
SQLSurf " SELECT [Surface] FROM [ILOTS] WHERE [NomIlot] """ & CmbNonIlot & """"
bon courage
Allez voir mon site !
http://www.amis-marolles.org le site d'une association s'occupant de patrimoine et de traditions