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 :

Afficher un mémo dans une zone de texte selon un OUI/NON d'une liste


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut Afficher un mémo dans une zone de texte selon un OUI/NON d'une liste
    Bonjour, j'aimerai afficher dans une zone de texte, un champ mémo. J'ai sur mon formulaire une zone de liste, de laquelle je reprends quelques champs pour les afficher dans des zones de texte. Dans la table où je récupère ces champs ,j'ai aussi un champ mémo que je veux afficher en meme temps quand je sélectionne un enregistrement, mais je veux l'afficher que si j'ai "OUI" dans un champ "fiche de poste" de ma zone de liste.

    Si je n'ai pas été assez clair n'hésitez pas à me le dire.

    Merci de votre aide.

    Walden.

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2005
    Messages : 267
    Points : 268
    Points
    268
    Par défaut
    il faut que tu utilises le VBA et mettre une condition

    If FicheDePoste = oui then
    affichage
    else
    pas d affichage
    end if

    il y a plusieurs solutions pour faire ca. tu peux le faire afficher tout le temps et quand c est oui l'écriture est noir si c est non l'ecriture est blanc (donc invisible pour l'utilisateur) : tu peux faire ca par le code (LeChamp = <NuméroDeLaCouleur) ou par la mise en forme conditionnelle (Sélection du champ -> Format -> Mise en Forme conditionnelle)

    c est un exemple
    n hesites pas si t as du mal a me comprendre!!!

  3. #3
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    Salut tamerlan, la condition je souhaite la mettre dans un afterupdate de ma zone de liste pour que lorsque je clique sur un enregistrement, le champ mémo s'affiche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Liste_Collaborateurs_AfterUpdate()
        Nom_Collab = Liste_Collaborateurs.Column(1)
        Prénom_Collab = Liste_Collaborateurs.Column(2)
        Secteur_Collab = Liste_Collaborateurs.Column(6)
        Fonction_Collab = Liste_Collaborateurs.Column(3)
    If FicheDePoste = OUI Then 
    ZoneDeTexte=MaTable.Mémo  '<- sur cette ligne j'ai une erreur, il me dit 'Objet requis
    Else ZoneDeTexte=""
    End If
    End Sub
    Comment résoudre cette erreur ?

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2005
    Messages : 267
    Points : 268
    Points
    268
    Par défaut
    ZoneDeTexte= MaTable.Mémo
    Le champ de ta table est Mémo... l'orthographe est bonne ?

  5. #5
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    je vais te noter exactement mes champs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Liste_Collaborateurs_AfterUpdate()
        Nom_Collab = Liste_Collaborateurs.Column(1)
        Prénom_Collab = Liste_Collaborateurs.Column(2)
        Secteur_Collab = Liste_Collaborateurs.Column(6)
        Fonction_Collab = Liste_Collaborateurs.Column(3)
        If FicheDePoste = OUI Then
        MissionsObjectifs_Collab = Collaborateurs.Missions_et_objectifs
        Else:  MissionsObjectifs_Collab = ""
        End If
    End Sub

  6. #6
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    Bon j'ai trouvé l'erreur, mon code est maintenant celui ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Liste_Collaborateurs_AfterUpdate()
        Nom_Collab = Liste_Collaborateurs.Column(1)
        Prénom_Collab = Liste_Collaborateurs.Column(2)
        Secteur_Collab = Liste_Collaborateurs.Column(6)
        Fonction_Collab = Liste_Collaborateurs.Column(3)
        If Liste_Collaborateurs.Column(7) = OUI Then
        MissionsObjectifs_Collab = Collaborateurs.Missions_et_objectifs
        Else:  MissionsObjectifs_Collab = ""
        End If
    End Sub
    Cependant, ca n'affiche pas mon mémo, donc je dois faire une erreur. Quand je clique sur un enregistrement de ma liste, mes zones de texte se modifient sauf celle où je dois afficher le mémo. Mais il n'y a pas d'erreur... J'ai l'impression que mon If ne sert à rien, Access ne voit rien, en tout cas pas mon "OUI"...

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2005
    Messages : 267
    Points : 268
    Points
    268
    Par défaut
    et c'était quoi ton erreur ?


    met ton OUI entre ""

  8. #8
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    L'erreur était que j'utilisais le champ FicheDePoste directement dans le If au lieu d'aller chercher la valeur dans la zone de liste via la colonne.

    OK je vais tester le OUI entre ".

  9. #9
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    Bon et bien le OUI entre " " n'ajoute rien...

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2005
    Messages : 267
    Points : 268
    Points
    268
    Par défaut
    et ton Liste_Collaborateurs.Column(7) c est quoi au juste? Une liste, un texte... ?

  11. #11
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    Ca c'est la valeur de mon booléen qui me dit s'il existe une fiche de poste pour cet employé et si OUI, alors j'affiche le descriptif des missions. Et c'est un champ de ma table Collaborateurs.

  12. #12
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    Je pense que dans mon code, le passage avec le Then est pas bon, je cherche à afficher le contenu de mon champ "missions_et_objectifs" de ma table collaborateurs, et je me dis que ma syntaxe est peut etre mauvaise. Quelqu'un a t il une idée ?

    Merci.

  13. #13
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    Alors petit récapitulatif :

    Le code actuel le voici :

    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
    Private Sub Liste_Collaborateurs_AfterUpdate()
        Nom_Collab = Liste_Collaborateurs.Column(1)
        Prénom_Collab = Liste_Collaborateurs.Column(2)
        Secteur_Collab = Liste_Collaborateurs.Column(6)
        Fonction_Collab = Liste_Collaborateurs.Column(3)
        If Liste_Collaborateurs.Column(7) = "OUI" Then
        MissionsObjectifs_Collab = Collaborateurs.Missions_et_objectifs
        Else: MissionsObjectifs_Collab = ""
        End If
    Le problème vient de ce qui est en gras, 
    rien ne se passe, je veux récupérer dans ma zone de texte MissionsObjectifs_Collab 
    le contenu de mon champ Missions_et_objectifs 
    (qui est un mémo) de ma table Collaborateurs si la valeur du 
    champ Liste_Collaborateurs.Column(7) de ma liste vaut OUI sinon je 
    n'affiche rien dans la zone de texte MissionsObjectifs_Collab 
    End Sub
    La, avec ce code, rien ne se passe dans ma zone de texte MissionsObjectifs_Collab.
    Reste à savoir pourquoi, et là j'ai besoin de votre aide, merci.

  14. #14
    Membre actif
    Profil pro
    Inscrit en
    octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2005
    Messages : 267
    Points : 268
    Points
    268
    Par défaut
    et pourquoi tu fais pas une requete en VBA qui te renvoie un champ de ta fiche? Si il est vide alors tu l affiches pas, si il y a quelque chose tu l affecte dans une liste (liste.rowsource = SQL)

    regardes ce tuto, ca peut peut etre t aider
    http://cafeine.developpez.com/access...echerchemulti/

  15. #15
    Membre à l'essai
    Inscrit en
    avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 42
    Points : 16
    Points
    16
    Par défaut
    Je vais regarder le tuto.

    merci.

Discussions similaires

  1. Réponses: 17
    Dernier message: 27/07/2021, 13h58
  2. onSelect d'une zone de texte selon le navigateur
    Par Shargat dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/04/2009, 15h03
  3. Réponses: 4
    Dernier message: 23/08/2007, 17h23
  4. Afficher un champ de la BD dans une zone de texte
    Par uloaccess dans le forum Access
    Réponses: 3
    Dernier message: 25/11/2005, 23h38
  5. Réponses: 29
    Dernier message: 03/11/2005, 10h37

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