IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

[VBA] modifier 1 message d'erreur


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 71
    Par défaut [VBA] modifier 1 message d'erreur
    Bonjour,

    Dans un formulaire, j'ai créer un bouton qui me permet de supprimer un enregistrement.

    Lors de l'exécution, j'ai un message automatique qui me demande de confirmer la suppression de l'enregistrement. Lorsque je refuse, j'ai un autre message d'erreur:
    " L'action Do MenuItem a été annulée"

    Est - il possible de changer directement le message d'erreur ou de masquer ce message par un autre.
    J'ai réussi à créer une nouveau message, mais le message automatique " L'action Do MenuItem a été annulée" s'affiche toujours.

    merci

    Tomas

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Par défaut
    Bonjour,
    Citation Envoyé par tomas
    Lors de l'exécution, j'ai un message automatique qui me demande de confirmer la suppression de l'enregistrement. Lorsque je refuse, j'ai un autre message d'erreur:
    " L'action Do MenuItem a été annulée"

    Est - il possible de changer directement le message d'erreur ou de masquer ce message par un autre.
    Tu ne pourras pas empêcher l'erreur de se produire.

    En revanche, tu peux mettre en oeuvre la gestion d'erreurs afin de capturer ou d'ignorer l'erreur provoquée.
    En VBA on utilise l'instruction On Error.

    Consulte l'aide en ligne de VBA, tout y est expliqué en détails.
    Syntaxe

    On Error GoTo line

    On Error Resume Next

    On Error GoTo 0
    Je te conseille tout simplement d'ignorer l'erreur en ajoutant l'instruction avant l'exécution du Docmd.DoMenuItem:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    On Error Resume Next
     
    Docmd.DoMenuItem ...

  3. #3
    Membre éprouvé
    Inscrit en
    Novembre 2005
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 136
    Par défaut
    bonjour,

    devant le meme pb, à savoir eviter la demande de confirmation (<> de la gestion d'erreur), j'utilise la commande

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docmd.setwarnings = false
    nb: ne pas oublier apres les instructions de suppression de remettre la valeur true

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Je gérerai l'erreur plutôt que l'ignorer, car une autre erreur peut survenir et on ne la détectera pas.

    Voici une exemple de code :
    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
    Private Sub cmdCritique_Click()
        ' ===== ouverture la boite de sélection d'une image =====
        Dim strTamp As String
        strTamp = OuvrirUnFichier(Me.hwnd, "Charger une Image", 1, "Fichier Image")
        If strTamp = "" Then
        Else
            strChemCritique = strTamp
        End If
        On Error GoTo GestError ' gestion de l'erreur
        Call AlimenterControles
        Exit Sub
    GestError:
        If Err.Number = 481 Then
            MsgBox "Le format de l'image sélectionnée n'est pas reconnu", vbExclamation + vbOKOnly, "Format Incorrect"
        Else
            MsgBox "Une erreur est survenue" & vbCrLf & Err.Number & " - " & Err.Description
        End If
    End Sub
    Quand l'erreur survient je vais sur GestError: (l'erreur survient dans la routine AlimenterControles), je gère l'erreur que j'ai reconnu (lors de la création de mon code), et je gère aussi si une autre erreur survient et que je n'ai pas encore détecté.

    Starec

  5. #5
    Membre éprouvé
    Inscrit en
    Novembre 2005
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 136
    Par défaut
    hello,

    je suis tout à fait d'accord sur le principe de gestion d'erreur

    mais ici il s'agit plutot d'eviter un message qui va demander de confirmer la suppression de donnees dans la table, ce n'est pas un message d'erreur à proprement parler.

    Si on veut traiter le cas par la gestion d'erreur il faut pouvoir repérer le type d'erreur (numéro) et je ne suis pas sûr que ce soit faisable avec un message d'information...

Discussions similaires

  1. Réponses: 7
    Dernier message: 14/08/2007, 11h17
  2. Réponses: 3
    Dernier message: 30/03/2007, 14h48
  3. Réponses: 5
    Dernier message: 21/07/2006, 11h21
  4. [MySQL] Modifier les messages d'erreur.
    Par vampiloup dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 06/03/2006, 10h37
  5. [VBA-E+SQL] Message d'erreur et excel qui plante
    Par Deejoh dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/02/2006, 16h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo