OVH Cloud OVH Cloud

Dupliquer enregistrement

1 réponse
Avatar
didier
Bonjour

Aujourd'hui je duplique des ligne d'enregistrement de la=20
fa=E7on suivante dont un champ est incr=E9menter de 1 =E0=20
chaque nouveau enregistrement
Dim Rst As DAO.Recordset
Dim I As Integer
Dim w_N=B0s=E9rie As Long
Dim w_Codeproduit As String
Dim w_version As String
Dim w_datecode As Long
Dim w_D=E9pot As String
Dim w_N=B0enregentr=E9e As Long
w_Codeproduit =3D Me.Code_Article
w_N=B0s=E9rie =3D Me.N=B0s=E9rie
w_version =3D Me.version
w_datecode =3D Me.datecode
w_D=E9pot =3D Me.D=E9pot
w_N=B0enregentr=E9e =3D Me.N=B0enregentr=E9e
DoCmd.RunCommand acCmdSaveRecord
Set Rst =3D Me.Recordset
For I =3D 2 To Me.Qt=E9
Rst.AddNew
w_N=B0s=E9rie =3D w_N=B0s=E9rie + 1
Rst![Code Article] =3D w_Codeproduit
Rst!N=B0s=E9rie =3D w_N=B0s=E9rie
Rst!version =3D w_version
Rst!datecode =3D w_datecode
Rst!D=E9pot =3D w_D=E9pot
Rst!N=B0enregentr=E9e =3D w_N=B0enregentr=E9e
Rst.Update
Next I
Maintenant et pour =E9viter des pb je souhaite mettre des=20
valeur par d=E9fault pour les controles Code_Article,D=E9pot=20
et N=B0enregentr=E9e pour =E7a aucun probl=E8me puis j'ai modifi=E9=20
le programme de duplication comme suivant:

Dim Rst As DAO.Recordset
Dim I As Integer
Dim w_N=B0s=E9rie As Long
Dim w_version As String
Dim w_datecode As Long
w_N=B0s=E9rie =3D Me.N=B0s=E9rie
w_version =3D Me.version
w_datecode =3D Me.datecode
DoCmd.RunCommand acCmdSaveRecord
Set Rst =3D Me.Recordset
For I =3D 2 To Me.Qt=E9
Rst.AddNew
w_N=B0s=E9rie =3D w_N=B0s=E9rie + 1
Rst!N=B0s=E9rie =3D w_N=B0s=E9rie
Rst!version =3D w_version
Rst!datecode =3D w_datecode
Rst.Update
Next I
Et l=E0 il bloque Soit sur DoCmd.RunCommand acCmdSaveRecord=20
ou sur Next I =E0 cause de mes valeurs par d=E9fault
Quel est le probl=E8me?
Merci

1 réponse

Avatar
?Lo»Paris?
didier wrote:
Bonjour

Aujourd'hui je duplique des ligne d'enregistrement de la
façon suivante dont un champ est incrémenter de 1 à
chaque nouveau enregistrement
Dim Rst As DAO.Recordset
Dim I As Integer
Dim w_N°série As Long
Dim w_Codeproduit As String
Dim w_version As String
Dim w_datecode As Long
Dim w_Dépot As String
Dim w_N°enregentrée As Long
w_Codeproduit = Me.Code_Article
w_N°série = Me.N°série
w_version = Me.version
w_datecode = Me.datecode
w_Dépot = Me.Dépot
w_N°enregentrée = Me.N°enregentrée
DoCmd.RunCommand acCmdSaveRecord
Set Rst = Me.Recordset
For I = 2 To Me.Qté
Rst.AddNew
w_N°série = w_N°série + 1
Rst![Code Article] = w_Codeproduit
Rst!N°série = w_N°série
Rst!version = w_version
Rst!datecode = w_datecode
Rst!Dépot = w_Dépot
Rst!N°enregentrée = w_N°enregentrée
Rst.Update
Next I
Maintenant et pour éviter des pb je souhaite mettre des
valeur par défault pour les controles Code_Article,Dépot
et N°enregentrée pour ça aucun problème puis j'ai modifié
le programme de duplication comme suivant:

Dim Rst As DAO.Recordset
Dim I As Integer
Dim w_N°série As Long
Dim w_version As String
Dim w_datecode As Long
w_N°série = Me.N°série
w_version = Me.version
w_datecode = Me.datecode
DoCmd.RunCommand acCmdSaveRecord
Set Rst = Me.Recordset
For I = 2 To Me.Qté
Rst.AddNew
w_N°série = w_N°série + 1
Rst!N°série = w_N°série
Rst!version = w_version
Rst!datecode = w_datecode
Rst.Update
Next I
Et là il bloque Soit sur DoCmd.RunCommand acCmdSaveRecord
ou sur Next I à cause de mes valeurs par défault
Quel est le problème?
Merci



bonjour Didier,

Soit les valeurs ne sont pas correcte pour le format du champ, soit tu ne
renseigne pas des champs qui doivent obligatoirement contenir une valeur, à
voir....

Salutations

--
°Laurent°