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

IHM Discussion :

[débutant] [VBA] activer/désactiver données enregistrements


Sujet :

IHM

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut [débutant] [VBA] activer/désactiver données enregistrements
    Bonjour à toutes et à tous,

    Voici le problème qui m'agace :

    Je voudrais activer ou désactiver des données en fonction d'une liste de choix sur chaque enregistrement d'un formulaire.
    Actuellement, mon soucis est que si je sélectionne une option dans ma liste de choix pour tel enregistrement, il désactive bien certaines données de l'enregistrement mais également celles de tous les autres enregistrements existants.

    Merci pour vos suggestions...

  2. #2
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut et bienvenu sur le Forum,
    Je ne vois pas très bien ce que tu veux éxactement, peux-tu être plus clair. Post également ton code actuel afin que l'on puissse t'aider.

    Si tu ne l'a pas déjà lu pense à lire ceci => A lire avant de poster
    tu auras des indications pour poster le code et autre astuce.

  3. #3
    Membre régulier

    Inscrit en
    Août 2005
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 102
    Points : 119
    Points
    119
    Par défaut
    A ma connaissance on ne peut pas désactiver des contrôles sur certains enregistrements seulement (c'est-à-dire que le changement s'applique à tous les enregistrements du formulaire). Mais on peut essayer de ruser.

    Pour ça il va falloir quelques précisions :
    -Tu as bien une liste de choix sur chaque enregistrement, pas une seule pour tout le formulaire ?
    -Les champs activés/désactivés : tu veux dire visible/invisible ou modifiable/verrouillé ? Est-ce que ce sont tous des zones de textes / cases à cocher ou y a-t-il aussi des boutons de commande ?
    -Quelle version d'Access utilises-tu ? (tu peux peut-être faire quelque chose avec la mise en forme conditionnelle si elle existe).

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Meduse,

    - J'ai bien bien une liste de choix sur chaque enregistrement,
    - Pour ce qui est des champs activés / désactivés, oui ce serait plutôt modifiable/verrouillé
    - ce sont tous des zones de textes et case à cocher
    - il s'agit d'access 97

    Merci pour ta réponse !

  5. #5
    Membre régulier

    Inscrit en
    Août 2005
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 102
    Points : 119
    Points
    119
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Form_Current()
    If Me.MaListe.Value = TelleValeur Then
    	Me.Champ1.Locked = False
    	Me.Champ2.Locked = False
    Else
    	Me.Champ1.Locked = True
    	Me.Champ2.Locked = True
    End If
    End Sub
    Ce code placé sur l'événement On Current du formulaire, verrouille Champ1 et Champ2 dans tous les enregistrements (c'est inévitable), mais il est exécuté à chaque fois que l'utilisateur change d'enregistrement, donc ça fait comme si Champ1 et Champ2 avaient un verrouillage différent dans chaque enregistrement.

    Il faut aussi que ce code soit exécuté quand l'utilisateur modifie MaListe et va directement su Champ1 sans passer par un autre enregistrement. Il faut donc ajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub MaListe_AfterUpdate()
    Form_Current
    End Sub

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Meduse,

    En fait, la fonction "mise en forme conditionnelle" répondait parfaitement à la problématique sous access 2000 malheureusement j'utilise access 97.

    Je vais tenter ta solution,

    En te remerciant

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Meduse,

    merci pour tes conseils , ca marche comme tu l'as expliqué

    Par contre j'aurais une autre question si ca ne te dérange pas

    Dans ma base, on associe chaque enregistrement à un fichier excel.
    Est ce que access peut détecter/ouvrir un fichier excel par concordance entre la valeur d'un champ et le nom du fichier ?

Discussions similaires

  1. [débutant] VBA inserer des données via une "box"
    Par Kernoz dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/02/2010, 18h29
  2. Réponses: 2
    Dernier message: 05/03/2009, 10h57
  3. [VBA-Excel]Désactiver macro lors d'un enregistrement
    Par Helios07 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/01/2007, 17h40
  4. [VBA-Access] Activer/Désactiver F11 en code
    Par Ricou13 dans le forum VBA Access
    Réponses: 7
    Dernier message: 19/12/2005, 12h06
  5. Réponses: 6
    Dernier message: 11/10/2004, 15h43

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