j'ai une boucle et 2 objets adodb
il vaut mieux redéclarer mon objet ADODB.Command à chaque fois
ou bien une seule fois :
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 ' Declare all variables. Option Explicit Dim conn, connstring, rec2, rs2 Dim rec1, rs1 Dim MyCommand Dim strBody set conn = createobject("adodb.connection") connstring = "driver={SQL SERVER};" & "server=serveur;uid=sa;pwd=;database=base" conn.open connstring rec2="SELECT Id FROM maTable" set rs2=conn.execute(rec2) if rs2.eof=false then rs2.movefirst do while not rs2.eof strBody = strBody&"<br>n° : "&rs2("Id") Set MyCommand = CreateObject("ADODB.Command") Set MyCommand.ActiveConnection = conn MyCommand.CommandText = "INSERT INTO Memo (MemoText,CreatedOn,CreatedById,inquiryId) VALUES('Relance par mail automatique',getdate(),'IU:ADMIN',?)" MyCommand.CommandType = 1 MyCommand.Parameters(0).Value = rs2("Id") MyCommand.Execute Set MyCommand=nothing rs2.movenext loop end if conn.close set conn=nothing
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 ' Declare all variables. Option Explicit Dim conn, connstring, rec2, rs2 Dim strBody Dim rec1, rs1 Dim MyCommand set conn = createobject("adodb.connection") connstring = "driver={SQL SERVER};" & "server=serveur;uid=sa;pwd=;database=base" conn.open connstring rec2="SELECT Id FROM maTable" 'obj pour l'insertion dans memo Set MyCommand = CreateObject("ADODB.Command") Set MyCommand.ActiveConnection = conn MyCommand.CommandText = "INSERT INTO SMemo (MemoText,CreatedOn,CreatedById,inquiryId) VALUES('Relance par mail automatique',getdate(),'ADMIN',?)" MyCommand.CommandType = 1 set rs2=conn.execute(rec2) if rs2.eof=false then rs2.movefirst do while not rs2.eof strBody = strBody&"<br>n° : "&rs2("Id") MyCommand.Parameters(0).Value = rs2("Id") MyCommand.Execute rs2.movenext loop end if Set MyCommand=nothing conn.close set conn=nothing
Partager