Recordset ( 3001) error

ana87 - 19 janv. 2016 à 14:48
vb95 Messages postés 3095 Date d'inscription samedi 11 janvier 2014 Statut Non membre Dernière intervention 5 octobre 2022 - 19 janv. 2016 à 17:44
Bonjour,
il y'a deux que j’essaye de contourner ce problème, voici mon code;
Option Compare Database

Private Sub Commande4_Click()


DoCmd.RunSQL "drop table dbo.TabIntervalEnqRegl"

sqlIntEch = "select dbo.TabEnquetregl.N_PERMIS, dbo.TabEnquetregl.Date_Reception, dbo.TabEnquetregl.date_report into dbo.TabIntervalEnqRegl" & _
" from dbo.TabEnquetregl"
DoCmd.RunSQL sqlIntEch

'sqlechh = " insert into dbo.TabIntervalEnqRegl" & _
'" Select dbo.TabEnquetregl.N_PERMIS, dbo.TabEnquetregl.Date_Reception, dbo.TabEnquetregl.date_report from dbo.TabEnquetregl"
'DoCmd.RunSQL sqlechh
'
sqlIntEch2 = "alter table dbo.TabIntervalEnqRegl" & _
" add rappel_reception datetime, rappel_report datetime"
DoCmd.RunSQL sqlIntEch2
'
DoCmd.RunSQL "drop table tabRegTm"
DoCmd.RunSQL "create table tabRegTm(N_Permis nvarchar(30),rappel_reception datetime, rappel_report datetime)"
'
'
Dim rsreg As ADODB.Recordset
Dim rsintregreg As ADODB.Recordset

Set rsreg = New ADODB.Recordset
Set rsintreg = New ADODB.Recordset
''
rsreg.Open "[TabEnquetregl]", con, 1, 3
rsintreg.Open "[tabRegTm]", con, 1, 3
'
Do While rsreg.EOF = False
N_Permis = rsreg("n_permis")
date_recp = rsreg("Date_Reception")
date_repo = rsreg("date_report")
date_real = rsreg("date_realisation")

If date_repo = "" And date_real = "" Then
date_recp = DateAdd("d", 10, [date_recp])

Else

If date_repo <> "" And date_real = "" Then
date_repo = DateAdd("d", 10, [date_repo])
End If

End If

recherche:
rsreg.MoveNext
Loop
GoTo MAJ
'
suite:
rsintreg.AddNew
rsintreg("n_permis") = N_Permis
rsintreg("rappel_reception") = date_recep
rsintreg("rappel_report") = date_repo
rsintreg.Update
Debug.Print N_Permis, "_", date_recep, "_", date_repo

GoTo recherche
'mise à jour table InterEch
MAJ:
sqlIntFinal = "update dbo.TabIntervalEnqRegl" & _
" set" & _
" dbo.TabIntervalEnqRegl.rappel_reception=dbo.tabRegTm.rappel_reception" & _
" dbo.TabIntervalEnqRegl.rappel_report=dbo.tabRegTm.rappel_report" & _
" from dbo.tabRegTm" & _
" where" & _
" dbo.tabRegTm.n_permis=dbo.TabIntervalEnqRegl.n_permis"
DoCmd.RunSQL sqlIntFinal

con.Close
Set con = Nothing
Set rsreg = Nothing
Set rsintreg = Nothing


End Sub





Mais le code bloque dans la ligne souligner, et m'affiche l'erreur num 3001.
j'ai vérifier et voici la liste des ref cocher:

visual basic for application
Micro access 14.0 object library
ole automation
micro activeX data object 6.1 library

et puisuqe le "Micro access 14.0 object library" est cocher pas besoin d'ajouter
le "DAO 3.6 library".

Si vous avez une idée????

1 réponse

vb95 Messages postés 3095 Date d'inscription samedi 11 janvier 2014 Statut Non membre Dernière intervention 5 octobre 2022 158
19 janv. 2016 à 17:44
bonjour
tu n'as pas précisé le sous-forum : je pense que c'est VBA
Et en enlevant les crochets [ ] ça donne quoi
0