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

Access Discussion :

Comment figer un enregistrement pour ne plus pouvoir le modifier


Sujet :

Access

  1. #1
    Membre du Club Avatar de ouflala
    Inscrit en
    Novembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 110
    Points : 53
    Points
    53
    Par défaut Comment figer un enregistrement pour ne plus pouvoir le modifier
    Bonjour,

    J'ai fait une petite application et j'aimerai lorsqu'on coche une case ne plus pouvoir modifier l'enregistrement que l'on vient de créer.

    J'ai donc écrit qques lignes de code pour cela, ca marche pas trop, il y a deux problemes:

    Quand je coche la case, tous mes enregistrements sont bloqués (y compris les suivants, donc impossible d'en créer de nouveau!!!

    Si je ferme et que je réouvre l'application je peux modifier tous mes enregistrements.... Or ce n'est pas le but recherché...

    Voici le code que j'ai tapé:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    If [Cocher36] = True Then
     
                [Observations].Locked = True
                [Id inspection].Locked = True
                [Id bénéficiaire].Locked = True
                [Id exploitation].Locked = True
                [Date_de_la_visite].Locked = True
     
            End If
     
    End Sub

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Pour un formulaire continu, il faut utiliser la mise en forme conditionnelle qui permet de verrouiller un controle (ligne par ligne et non toute la colonne)

    Cf http://warin.developpez.com/access/mfc/

  3. #3
    Membre du Club Avatar de ouflala
    Inscrit en
    Novembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    En fait je me suis peut etre mal expliqué...

    Ce n'est pas un seul contrôle que je veux bloquer, mais toute une page ( de mon formulaire)

    Car une page de mon formulaire correspond a un enregistrement dans lequel il y a plusieurs champs (case à remplir).

    Il s'agit de tous ces champs que je veux bloquer. Or quand je mets en place le code que j'ai tapé, ca bloque bien tous les champs de la page en cours mais aussi tous les champs de toutes futures pages ...

    voila j'espere que j'ai été un peu plus clair...

  4. #4
    Membre actif Avatar de Mariboo
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 254
    Points : 238
    Points
    238
    Par défaut
    Et bien il te suffit d'écrire le code à l'ouverture du form (FormOpen) et sur activation (Form_Current) , en plus de l'événement After_update de ta case...

    et bien sur tu rajoute :

    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
    If [Cocher36] = True Then
    
    [Observations].Locked = True
    [Id inspection].Locked = True
    [Id bénéficiaire].Locked = True
    [Id exploitation].Locked = True
    [Date_de_la_visite].Locked = True
    
    else
    [Observations].Locked = false
    [Id inspection].Locked = false
    [Id bénéficiaire].Locked = false
    [Id exploitation].Locked = false
    [Date_de_la_visite].Locked = false
    
    End If
    pour débloquer les champs

  5. #5
    Membre du Club Avatar de ouflala
    Inscrit en
    Novembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    Merci pour les infos, mais je ne suis pas un crac en access, donc est ce que tu pourrai un peu plus développer à propos de :

    " l'ouverture du form (FormOpen) "
    " sur activation (Form_Current) "
    " l'événement After_update de ta case..."

    Merci d'avance...

  6. #6
    Membre actif Avatar de Mariboo
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 254
    Points : 238
    Points
    238
    Par défaut
    Il te faut mettre ce 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
    If [Cocher36] = True Then
     
    [Observations].Locked = True
    [Id inspection].Locked = True
    [Id bénéficiaire].Locked = True
    [Id exploitation].Locked = True
    [Date_de_la_visite].Locked = True
     
    else
    [Observations].Locked = false
    [Id inspection].Locked = false
    [Id bénéficiaire].Locked = false
    [Id exploitation].Locked = false
    [Date_de_la_visite].Locked = false
     
    End If
    Sur l'événement "Sur Ouverture" (Form_Open) de ton formulaire , sur l'événement "Sur activation" (Form_Current) de ton form ....
    Bon normalement il suffit juste de le mettre sur "Form_Current" mais moi j'aime bien le mettre sur les deux car on est jamais trop prudent ...

    Et bien sûr il faut que tu mette ce code sur l'événement "Après Mise à jour"(Cocher36_AfterUpdate) de ta case à cocher... mais je suppose que ça tu l'avais déjà fait puisque tes champs se vérouillaient quand tu cochait la case.

  7. #7
    Membre du Club Avatar de ouflala
    Inscrit en
    Novembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    Salut

    Ca marche...

    Un grand merci!

    Et voila un pb de resolu...


    Encore merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 04/07/2014, 13h12
  2. Réponses: 2
    Dernier message: 24/04/2012, 14h22
  3. [WD-2007] Comment figer des images pour ne plus qu'elles bougent ?
    Par viktor-l dans le forum Word
    Réponses: 11
    Dernier message: 05/01/2012, 03h11
  4. [AC-2003] comment compter les enregistrements pour chaque mois
    Par bogmarley dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 16/09/2009, 11h31
  5. Réponses: 1
    Dernier message: 28/06/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