Access VBA - gestion d'erreur
riri2112
Messages postés
2
Statut
Membre
-
Heliotte Messages postés 1561 Statut Membre -
Heliotte Messages postés 1561 Statut Membre -
Bonjour,
J'essaye (en vain) de faire fonctionner un bout de code et ô malheur, on peut dire que ça ne marche pas vraiment comme je veux.
L'idée c'est de créer un nouveau document dans le formulaire NewCode en entrant un Type et un numéro
Je génère un CodeConcaténé unique dans un champ qui n'accepte pas les doublons
1- si le CodeConcaténé est unique (nouveau document) alors j'ouvre le formulaire Document avec les infos rentrées
2 - si le CodeConcaténé existe déja, je signale qu'on a à faire à un doublon puis j'efface la ligne qui vient d'être créée
Voilà ce que j'ai écrit et ça ne fonctionne pas quand je crée un doublon : la ligne se crée, le CodeConcaténé non et mon formulaire document s'ouvre sur mon doublon
Problème de gestion d'erreur ?
Merci d'avance pour votre aide
Private Commande3_Click()
DoCmd.SetWarnings False
On Error GoTo GestionErreur
Dim position As Integer
position = Me.Indexdoc
DoCmd.Close acForm, "NewCode"
DoCmd.RunSQL "UPDATE Documents SET CodeConcaténé = [Type] & [numero]"
DoCmd.OpenForm "Documents", acNormal, , "[Indexdoc]=" & position
Exit Sub
GestionErreur:
MsgBox "Attention doublon - enregistrement non effectué"
RunCommand acCmdDeleteRecord
DoCmd.SetWarnings True
End Sub
J'essaye (en vain) de faire fonctionner un bout de code et ô malheur, on peut dire que ça ne marche pas vraiment comme je veux.
L'idée c'est de créer un nouveau document dans le formulaire NewCode en entrant un Type et un numéro
Je génère un CodeConcaténé unique dans un champ qui n'accepte pas les doublons
1- si le CodeConcaténé est unique (nouveau document) alors j'ouvre le formulaire Document avec les infos rentrées
2 - si le CodeConcaténé existe déja, je signale qu'on a à faire à un doublon puis j'efface la ligne qui vient d'être créée
Voilà ce que j'ai écrit et ça ne fonctionne pas quand je crée un doublon : la ligne se crée, le CodeConcaténé non et mon formulaire document s'ouvre sur mon doublon
Problème de gestion d'erreur ?
Merci d'avance pour votre aide
Private Commande3_Click()
DoCmd.SetWarnings False
On Error GoTo GestionErreur
Dim position As Integer
position = Me.Indexdoc
DoCmd.Close acForm, "NewCode"
DoCmd.RunSQL "UPDATE Documents SET CodeConcaténé = [Type] & [numero]"
DoCmd.OpenForm "Documents", acNormal, , "[Indexdoc]=" & position
Exit Sub
GestionErreur:
MsgBox "Attention doublon - enregistrement non effectué"
RunCommand acCmdDeleteRecord
DoCmd.SetWarnings True
End Sub
A voir également:
- Access VBA - gestion d'erreur
- Logiciel gestion locative gratuit excel - Télécharger - Comptabilité & Facturation
- Logiciel gestion photo gratuit - Guide
- Logiciel gestion garage - Télécharger - Organisation
- Logiciel gestion cabinet médical gratuit - Télécharger - Organisation
- Logiciel gestion cave à vin gratuit - Télécharger - Cuisine & Gastronomie
2 réponses
bonsoir,
c'est qu'aucune ligne ne génère d'erreur.
Rien ne le gène puisque la ligne est crée...
eric
c'est qu'aucune ligne ne génère d'erreur.
Rien ne le gène puisque la ligne est crée...
eric
Private Commande3_Click() DoCmd.SetWarnings False On Error GoTo GestionErreur Dim position As Integer position = Me.Indexdoc DoCmd.Close acForm, "NewCode" DoCmd.RunSQL "UPDATE Documents SET CodeConcaténé = [Type] & [numero]" DoCmd.OpenForm "Documents", acNormal, , "[Indexdoc]=" & position Exit Sub GestionErreur: MsgBox "Attention doublon - enregistrement non effectué" RunCommand acCmdDeleteRecord DoCmd.SetWarnings True End Sub
Bonjour riri2112,
Ajouter une condition avant la création est le plus utilisé.
Je pense avant la ligne de mise à jour .. vérifier si la concaténation des champs [Type] & [numero] correspond à un enregistrement de [CodeConcaténé]
Valà
Eric