Dans un formulaire, j'ai mis un code pour qu'il m'annonce la pr=E9sence
de la m=EAme pi=E8ce (doublon) dont voici le code
Private Sub Exp=E9diteur_AfterUpdate(Cancel As Integer)
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim EnrPrec As Variant
Dim EnrEnCour As Variant
Set db =3D Application.CurrentDb
Set rs =3D db.OpenRecordset("SELECT * FROM Indicateur d'entr=E9e Requ=EAte
ORDER BY Concatenation")
'1er Enreg
rs.MoveFirst
Do
If rs.AbsolutePosition <> 0 Then
rs.MovePrevious
EnrPrecedent =3D rs("Concatenation")
rs.MoveNext
If EnrEnCour =3D EnrPrec Then
MsgBox "ATTENTION CETTE PIECE EST DEJA INDICATEE"
rs.Delete
End If
End If
rs.MoveNext
Loop Until rs.EOF =3D True
End Sub
Cela ne marche pas ? Serait-ce parceque je fais r=E9f=E9rence =E0 une
requ=EAte (set rs=3D db.........FROM Indicateur d'entr=E9e Requ=EAte) ?
Je ne comprend pas ce qui ne va pas?=20
Merci d'avance
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Laurent Jordi
Salut,
Pourquoi ne pas faire un indexe unique qui empècherait la création de doublon et d'ajouter une interception d'erreur pour mettre un message en clair ?
Bien à toi
Laurent "Cestmoi" a écrit dans le message de news:
Dans un formulaire, j'ai mis un code pour qu'il m'annonce la présence de la même pièce (doublon) dont voici le code Private Sub Expéditeur_AfterUpdate(Cancel As Integer) Dim db As DAO.Database Dim rs As DAO.Recordset Dim EnrPrec As Variant Dim EnrEnCour As Variant Set db = Application.CurrentDb Set rs = db.OpenRecordset("SELECT * FROM Indicateur d'entrée Requête ORDER BY Concatenation") '1er Enreg rs.MoveFirst Do If rs.AbsolutePosition <> 0 Then rs.MovePrevious EnrPrecedent = rs("Concatenation") rs.MoveNext If EnrEnCour = EnrPrec Then MsgBox "ATTENTION CETTE PIECE EST DEJA INDICATEE" rs.Delete End If End If rs.MoveNext Loop Until rs.EOF = True End Sub
Cela ne marche pas ? Serait-ce parceque je fais référence à une requête (set rs= db.........FROM Indicateur d'entrée Requête) ? Je ne comprend pas ce qui ne va pas? Merci d'avance
Salut,
Pourquoi ne pas faire un indexe unique qui empècherait la création de
doublon et d'ajouter une interception d'erreur pour mettre un message en
clair ?
Bien à toi
Laurent
"Cestmoi" <albert.fouarge@just.fgov.be> a écrit dans le message de news:
1142923901.978598.118890@e56g2000cwe.googlegroups.com...
Dans un formulaire, j'ai mis un code pour qu'il m'annonce la présence
de la même pièce (doublon) dont voici le code
Private Sub Expéditeur_AfterUpdate(Cancel As Integer)
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim EnrPrec As Variant
Dim EnrEnCour As Variant
Set db = Application.CurrentDb
Set rs = db.OpenRecordset("SELECT * FROM Indicateur d'entrée Requête
ORDER BY Concatenation")
'1er Enreg
rs.MoveFirst
Do
If rs.AbsolutePosition <> 0 Then
rs.MovePrevious
EnrPrecedent = rs("Concatenation")
rs.MoveNext
If EnrEnCour = EnrPrec Then
MsgBox "ATTENTION CETTE PIECE EST DEJA INDICATEE"
rs.Delete
End If
End If
rs.MoveNext
Loop Until rs.EOF = True
End Sub
Cela ne marche pas ? Serait-ce parceque je fais référence à une
requête (set rs= db.........FROM Indicateur d'entrée Requête) ?
Je ne comprend pas ce qui ne va pas?
Merci d'avance
Pourquoi ne pas faire un indexe unique qui empècherait la création de doublon et d'ajouter une interception d'erreur pour mettre un message en clair ?
Bien à toi
Laurent "Cestmoi" a écrit dans le message de news:
Dans un formulaire, j'ai mis un code pour qu'il m'annonce la présence de la même pièce (doublon) dont voici le code Private Sub Expéditeur_AfterUpdate(Cancel As Integer) Dim db As DAO.Database Dim rs As DAO.Recordset Dim EnrPrec As Variant Dim EnrEnCour As Variant Set db = Application.CurrentDb Set rs = db.OpenRecordset("SELECT * FROM Indicateur d'entrée Requête ORDER BY Concatenation") '1er Enreg rs.MoveFirst Do If rs.AbsolutePosition <> 0 Then rs.MovePrevious EnrPrecedent = rs("Concatenation") rs.MoveNext If EnrEnCour = EnrPrec Then MsgBox "ATTENTION CETTE PIECE EST DEJA INDICATEE" rs.Delete End If End If rs.MoveNext Loop Until rs.EOF = True End Sub
Cela ne marche pas ? Serait-ce parceque je fais référence à une requête (set rs= db.........FROM Indicateur d'entrée Requête) ? Je ne comprend pas ce qui ne va pas? Merci d'avance
Cestmoi
Je veux bien mais la recherche de doublon se fait dans une requête, dans le champ "concatenation" précisémment. Comme je ne peux pas faire d'index unique dans une requête, je suis coiné.
Je veux bien mais la recherche de doublon se fait dans une requête,
dans le champ "concatenation" précisémment. Comme je ne peux pas
faire d'index unique dans une requête, je suis coiné.
Je veux bien mais la recherche de doublon se fait dans une requête, dans le champ "concatenation" précisémment. Comme je ne peux pas faire d'index unique dans une requête, je suis coiné.