Access 2003 - FORMULAIRE : champ

Bonjour à toutes et à tous,

Voilà, j'ai un formulaire "convention" et dans ce formulaire j'ai entre autres un champ "N° de la convention" et un champ "Date fin" (fin de l'application de la convention).

J'aimerais que le champ "N° de la convention" affiche par défaut (automatiquement) une couleur différente lorsque la convention dans le champ "Date fin" n'est plus active, pourriez-vous m'aider ?

Merci d'avance

Shreeya
Configuration: Windows XP
Internet Explorer 7.0

18 réponses

Résumé de la discussion

Problématique centrale : dans un formulaire, il est souhaité que le champ N° de la convention change de couleur automatiquement lorsque la Date fin indique une convention expirée. Des essais portent sur des manipulations et du code, mais les solutions avancées portent sur la synchronisation entre étiquette et champ et l’emploi de la mise en forme conditionnelle. Plusieurs réponses évoquent des approches variées, mais la résolution finalement retenue consiste à appliquer une mise en forme conditionnelle pour colorer le champ concerné lorsque la date est dépassée. En pratique, cette solution évite les erreurs d’interprétation et offre une indication visuelle fiable sans modification lourde du code existant, puis elle peut être adaptée à d’autres champs similaires ou à d’autres critères temporels.

Bobot (l’IA à votre service)
  1. là, il va falloir te mettre au vba.
    avec un if date >31/03/07 then nom_de_l'etiequette.color=bleu
    je ne suis pas sur du color, je ne sais pas traduire couleur de fond en anglais :p
    mais tu as le principe.
    0
    1. Merci, j'apprécie!

      Mais là je n'y arrive pas!
      La formule ne veut pas être éxécutée!
      Que faire?
      0
  2. salut,

    mets nous ta formule avec le bout de code qui va avec, que l'on puisse voir où ça cloche

    ;o)

    polux
    0
    1. Salut,

      voici la formule qui m'a été fourni par frappe misère : if date >31/03/07 then nom_de_l'etiquette.color=bleu

      j'ai essayé mais en vain!

      Merci
      0
  3. bonjour,

    Essaies avec ça : nom_de_l'etiquette.BackColor=&H00FF0000& 'si tu veux le fond bleu et nom_de_l'etiquette.ForeColor=&H00FF0000& 'si tu veux la police bleue.

    ;o)

    polux
    0
    1. Bonjour Polux,

      Merci de ton aide, cela ne fonctionne pas. Ca fait débogage.
      Je ne sais pas quoi faire pour résoudre ce pb.

      Merci encore pour ton aide,

      Shreeya
      0
  4. bonjour,

    As-tu un message d'erreur ?
    0
    1. Salut,

      Alors le message d'erreur qui s'affiche est : "Erreur d'exécution '424' , Objet requis"

      Que faire?

      Merci pour ton aide, je te remercie, énormément!
      0
  5. il te surligne un morceau de code avec ce message ?
    0
    1. oui & je ne sais pas quoi faire
      0
  6. bonjour,

    colle ici le morceau de code surligné ... ça fera avancer le smilblickk

    ;o)

    polux
    0
    1. Bonjour Polux,

      Sub couleur()
      If datefin < 1 / 1 / 2008 Then datefin.BackColor = O16764057
      End Sub

      C'est la partie soulignée.

      Merci car là vraiment je désespère
      0
      1. If datefin.text < 1 / 1 / 2008 Then datefin.BackColor = "16764057"
        0
        1. Bonjour,

          La formule ne veut pas fonctionner.
          Question : dois-je défnir les variables ou pas?

          Merci encore
          0
          1. bonjour,

            j'ai pas testé mais peut être qu'il faut convertir soit datefin.text en date (CDate(datefin.text)) ou bien 1/1/2008 en string (Cstr(1/1/2008)).
            J'opterai plutôt pour:

            If CDate(datefin.text) < 1 / 1 / 2008 Then datefin.BackColor = "16764057"

            Mais pas garantie, j'ai pas testé ...
            0
            1. datefin c'est le nom de l'étiquette, pas d'un champ.
              le type de données ne change rien, et ça fonctionne donc, tu dois t'emmeler dans les noms de champs // etiquettes.
              0
              1. salut stp aidé moi

                ds l'excel je fé la rechrche g deux colonne nom et prenom mé qd je fé la recherche d'un nom ,l'excel est plus longs

                je veu apliké ça dans access et je ne sé pa comment je fasse

                merci
                0
                1. Bonjour Amoune,

                  Je ne comprends pas ta requête.
                  De plus, il faut te créer un compte à part.

                  Bonne journée
                  0
              2. Bonjour,

                En fait, les noms de champs et d'étiquettes sont idems.
                9a ne fonctionne toujours pas, que faire?
                Y a-t-il un autre moyen pour mettre en évidence une convention périmée?

                Merci
                0
                1. bnj

                  merci pour le message

                  je veu faire la recherche par un nom et je veu uen rcherche précise par exemple qand je tape sofi l'execel me

                  donne tous les noms qui contiennent le nom SOFI ,tu peu m'aidé comment programmé ça ds access

                  merci
                  0
                2. @amounebonjour,

                  Ouvres une autre discussion si tu veux des réponses.

                  ;o)

                  polux
                  0
                3. @Polux31comment j'ouvre une autre discution

                  merci
                  0
              3. Quand tu es sur le forum, clique sur : Poser votre question
                0
                1. Bonjour,

                  Toujours pas de solution à mon problème!
                  Que faire?

                  Merci à celui ou celle qui souhaite m'aider.
                  0
                  1. Bonjour,

                    Ayant essayé plusieurs manipulations, je n'ai réusi à rien effectuer.
                    Que puis-faire pour remédier à mon problème?

                    Merci d'avance,

                    Shreeya
                    0
                    1. Bonjour Polux31 et Frappe Misère,

                      Je tiens à vous remercier de vosaides multiples et à vous informer que j'ai résolu mon problème.

                      En fait, il fallait juste que je fasse une mise en forme conditionnelle.

                      Au moins, j'ai enfin réussi à résoudre ce problème!

                      Merci encore & à bientôt,

                      Shreeya
                      0