VB6 plusieurs enregistrement à la fois

Signaler
Messages postés
2
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
1 octobre 2002
-
Messages postés
2
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
1 octobre 2002
-
j'arrive pas insert plusieurs enregistrement à la fois dans ma BD sous ACCESS. Il veut bien ligne par ligne, mais pas tout. J'ai plus que 30 option. Je coule.

Private Sub cmdValider_Click()

Dim ligne As String
Dim code As String
Dim titre As String
Dim etatcivil As String
Dim rs As New ADODB.Recordset
Dim i%
If txtSociete.Text "" Or txtNom.Text "" Or txtAdresse.Text = "" Or txtCP.Text = "" Or cmbVersion.Text = "" Then
MsgBox "Vous devez remplir des champs"
End If

If optMadame.Value Then

etatcivil = "Mme"

End If

If optMlle.Value Then

etatcivil = "Mlle"
End If

If optMonsieur.Value Then

etatcivil = "Mr"

End If

Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
'rs.Open sql, cnAuto, adOpenKeyset, adLockOptimistic, adCmdText

cn.Open

Do While Not rs.EOF

If opt11.Value Then

code = fgInternet.TextMatrix(1, 0)
titre = fgInternet.TextMatrix(1, 1)


If opt12.Value Then

code = fgInternet.TextMatrix(2, 0)
titre = fgInternet.TextMatrix(2, 1)

Set rs = New ADODB.Recordset

cn.BeginTrans
rs.Open ("insert into AtelierValide values ('" & code & "','" _
& cmbVersion.Text & "', '" & titre & "', '" & txtSociete.Text & "', '" _
& etatcivil & "', '" & txtNom.Text & "', '" & txtDate.Text & "')"), cn

End If

End If

rs.MoveNext
'cn.Close

Loop

Dim rep

rep = MsgBox("Confirmez-vous la validation?", vbYesNo + vbDefaultButton2 + vbQuestion, "Confirmation de la transaction")

If rep = vbYes Then
cn.CommitTrans

Else
cn.RollbackTrans

End If

End Sub

2 réponses

Messages postés
562
Date d'inscription
dimanche 16 décembre 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
1
Essaye en utilisant un objet adodb.command et non un recordset peut etre que tu auras un meilleur résultat, mais j'en suis pas sûr.
Si ça marche pas, réponds à ce message, je lirai ton code avec plus d'attention
@+
0
Messages postés
2
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
1 octobre 2002

Merci Patrice! j'ai trouvé la solution. Declaration de tableau.

Dim cod(40, 1) As String
Dim x As Integer
Dim y As Integer
Dim opt As String
y = 0




If opt9.Value Then

cod(y, 0) = flgridWindows.TextMatrix(1, 0)
cod(y, 1) = flgridWindows.TextMatrix(1, 1)
y = y + 1

End If

If opt10.Value Then

cod(y, 0) = flgridWindows.TextMatrix(2, 0)
cod(y, 1) = flgridWindows.TextMatrix(2, 1)
y = y + 1

End If

etc.

tous les enregistrements rentrent das BD. Merci. A +.Zorenka.
0