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 :

Empécher la fermeture d'un formulaire par la croix sur Erreur [AC-2007]


Sujet :

VBA Access

  1. #21
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Re,

    On va essayer différement.

    Dans la partie déclaration du module du formulaire, on définit une variable de portée du formulaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Option Compare Database
    Option Explicit
     
    Dim blnFermeture As Boolean
    Ensuite, dans l'événement Sur activation (qui se produit à l'ouverture du formulaire et à chaque changement d'enregistrement, on met systématiquement cette variable à faux).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Form_Current()
    blnFermeture = False
    End Sub
    Dans l'événement Sur erreur, on complète le test avec l'erreur 2169, c'est celle qui se produit lors de la fermeture du formulaire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Select Case DataErr
        Case 3314 'Erreur
            MsgBox "Message..."
            'Continue sans afficher l'erreur standard
            Response = acDataErrContinue
        Case 2169 'Erreur lors de la fermeture
            Response = acDataErrContinue
            'Fermeture du formulaire. On passe la la variable à Vrai        
            blnFermeture = True
        Case Else
            Response = acDataErrDisplay
    End Select
    Et dans l'événement Sur libération, on annule la fermeture si la variable est à vrai.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Form_Unload(Cancel As Integer)
        Cancel = blnFermeture
        blnFermeture = False
    End Sub
    J'ai pas mieux...

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  2. #22
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2003
    Messages : 453
    Points : 500
    Points
    500
    Par défaut
    merci encore pour le temps consacré à mon problème

    Après test, c'est exactement ce que je veux !!!!!!!




    Je mets donc en résolu !!!

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/05/2015, 09h48
  2. [AC-2010] Empêcher la fermeture de la base par la croix
    Par docjo dans le forum IHM
    Réponses: 1
    Dernier message: 30/04/2012, 18h10
  3. empêcher la fermeture d'une fenêtre par Alt+F4
    Par doderic dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 25/08/2008, 17h11
  4. Comment détecter la fermeture d'une fenêtre par la croix?
    Par man_coef dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/06/2008, 16h34
  5. [Système] Empêcher la fermeture de mon formulaire
    Par mick030118 dans le forum IHM
    Réponses: 3
    Dernier message: 25/04/2007, 13h23

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