VBA access Selectionner le mois dans une date

Bonjour,

J'ai un formulaire sous access lié à une table, avec un champ date.

J'ai dans ce formulaire 3 onglets (Mois / semaine / jour) et dans chacun une liste déroulante lié aux enregistrements dans DateD.

J'aimerai faire les selections par moi, par semaine (et par jour, cela est fait automatiquement (date complète)).

JE ne veux donc pas la date complète mais seulement le mois, ou la semaine...

Comment faire svp...
Configuration: Windows Vista
Firefox 3.5.3

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Salut,

    Tu as une fonction spéciale VBA pour cela : PARTDATE("partie";date). Dans partie tu indiques la partie de la date que tu souhaites extraire "m" pour mois, "yyyy" pour année (de mémoire). Cette fonction est décrite dans l'aide de VBA et tu peux l'inclure dans une requete SQL.

    Cdlt

    IC
    1. Bonsoir sbastien,
      Voici quelques spécimens de requêtes en rapport avec votre question. Je vous laisse apprécier ... ou pas ...
      En tout cas, elles sont opérationnelles. Il vous reste à les adapter ...

      N° de la semaine en cours dans l'année en cours
      SELECT DatePart("Ww",Now()) AS [Semaine en cours N°];

      Celle-ci correspond assez bien à ce que vous demandez.
      SELECT TRANSACTIONS.DateSaisie, TRANSACTIONS.RéfValeur, DatePart("m",[Datesaisie]) AS Mois, DatePart("yyyy",[Datesaisie]) AS Millésime
      FROM TRANSACTIONS
      WHERE (((DatePart("m",[Datesaisie]))=[ Tantième du mois ? ]))
      ORDER BY DatePart("m",[Datesaisie]);

      Liste des enregistrements de la semaine en cours

      SELECT DatePart("WW",[Datesaisie]) AS [Semaine N°], TRANSACTIONS.RéfValeur, TRANSACTIONS.DateSaisie
      FROM TRANSACTIONS
      WHERE (((DatePart("WW",[Datesaisie]))=DatePart("Ww",Now())));

      Cordialement