Erreur vb

fab101 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
bonjour

voila j'ai fait ce code
Sub copie1()

Dim db As DAO.Database
Dim ajout As DAO.Recordset
Dim tbl As DAO.Recordset
Dim fld(32)
Dim tableau(32)
Dim modif As DAO.Recordset
Dim str As String
Dim str2 As String

Set db = CurrentDb



Set tbl = db.OpenRecordset("select * from salut where nom_serveur ='" & serveur1 & "';")
Set ajout = db.OpenRecordset("select * from temporaire where nom_serveur ='" & serveur1 & "';")
Set modif = db.OpenRecordset("salut", dbOpenDynaset)
Do Until tbl.EOF
modif.AddNew
For i = 1 To 31

ajout.Field(i) = tbl.Fields(i)
Next
modif.Update
tbl.MoveNext
tbl.Close
ajout.Close
modif.Close

Loop

End Sub



il me met une erreur a ajout.field
cette est erreur est
menbre de methode ou de données introuvable


savez vous ce que c'est
merci
A voir également:

3 réponses

jlb59 Messages postés 343 Date d'inscription   Statut Membre Dernière intervention   5
 
Salut,
Tu veux faire quoi exactement ?

J'avais fait un prg qui utilisait la base de données :
- Création de la Bdd
- Création des tables
- Création des champs
- Indexation

Ce qui m'intrigue dans ta src, c'est l'objet "DAO"; tu utilises VB6 ?

Quoiqu'il en soit, je te mets la src de l'exemple que j'ai mis sur http://www.vbfrance.com.
Si tu peux en faire qq chose !

Function ListIndex() As Integer

Dim DB As Database
Dim WS As Workspace
Dim TBL As TableDef
Dim FLD As Field
Dim IDX As Index
Dim Dyn As Recordset
Dim I As Integer

Set WS = DBEngine.Workspaces(0)
Set DB = WS.CreateDatabase("AGENDA.MDB", dbLangGeneral)

Set DB = Workspaces(0).OpenDatabase("AGENDA.MDB")
Set TBL = DB.CreateTableDef("AGENDA")
'Set Dyn = DB.OpenRecordset("SELECT Num FROM Agenda", dbOpenDynaset)
'============================================================
Set FLD = TBL.CreateField("Numéros", dbText, 14)
FLD.Required = True ' Les valeurs Null ne sont pas acceptées.
TBL.Fields.Append FLD
'-------------------------------------------------
Set FLD = TBL.CreateField("Noms", dbText, 30)
FLD.Required = True ' Les valeurs Null ne sont pas acceptées.
TBL.Fields.Append FLD

DB.TableDefs.Append TBL
'============================================================
' Crée un index primaire pour ces deux champs.
Set IDX = TBL.CreateIndex("IDX")
IDX.Primary = True
IDX.Unique = True
'-----------------------------------------------
Set FLD = TBL.CreateField("Numéros")
' N'indexe que ce champs pour ne pas avoir le même N°
IDX.Fields.Append FLD

'Set FLD = TBL.CreateField("Noms")
' N'indexe que ce champs pour ne pas avoir le même Nom
'IDX.Fields.Append FLD

TBL.Indexes.Append IDX
'============================================================
ListIndex = True
End Function

Private Sub Form_Load()
If Err.Number = 53 Then GoTo suite ' Si le fichier Existe
Test = Dir(App.Path & "AGENDA.MDB")

If Test <> "" Then
Kill (App.Path & "AGENDA.MDB")
GoTo suite
End If

suite:
ListIndex
End Sub


il me met une erreur a ajout.field
cette est erreur est
menbre de methode ou de données introuvable

A mon avis, si tu as ce msg, c'est parce qu'il te manque une table ou qu'elle soit mal orthographiée.
Attention aux majuscule et minuscule, c'est src d'erreur (j'ai eu le tour !).

Bon courage.

A+
! ------------------------------!
Http://www.phone99.net !
0
jlb59 Messages postés 343 Date d'inscription   Statut Membre Dernière intervention   5
 
Je t'ai EV le mauvais src, j'ai pas fait gaffe au tien ! Désolé.
Voici ce que j'ai pou récupéré d'un ancien prg :

Dim Liste As Recordset
Set DB = Workspaces(0).OpenDatabase(App.Path & Chemin_Bdd & Name_Bdd)
'------------------------- 0 1 2 3 4 5 6
'----------------------- Idx, Num, Noms, Dates, Heures, Durées, Tarifs
SQL = "SELECT Idx, Num, Noms, Dates, Heures, Durees " & _
"FROM Comm ORDER BY Dates ASC, Num ASC, Noms ASC, Heures ASC; "
Set Liste = DB.OpenRecordset(SQL, dbOpenDynaset)


Il y a peut-être une différence d'accès entre VB5 et 6 !...

A+



! ------------------------------!
Http://www.phone99.net !
0
Utilisateur anonyme
 
ça serait pas Ajout.Fields(i) ?

ceci étant, tu ferais mieux d'utiliser un objet Querydef et de rentrer tes données en SQL dans la panse à ta table
0