[Access & SQL] formulaire + requête

Fermé
rsaaccess - 17 mai 2006 à 08:30
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 - 8 mars 2008 à 14:19
Bonjour à tout le p'tit monde du forum ;-)

Bon voilà, c'est une première pour moi, je suis en pleine création d'une base de données sous access xp, et j'ai deux problème :


- A l'ouverture du formulaire, les onglets(du contrôle onglets) sont cachés.(le contrôle onglet est situé dans la section détail)
Quelle solution adopter ? serait-il possible à l'ouverture du formulaire de forcer en position haute la barre de défilement verticale pour pouvoir apercevoir les onglets ?


- Pour les requêtes en mode création, comment faire pour choisir tous les enregistrements datant de moins de deux mois par rapport à la date du jour? quelles syntaxes sont possible ?


Merci pour les prochaines réponses, car sans, je n'aurais plus de cheveux d'ici deux jours.

3 réponses

blux Messages postés 26498 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 28 novembre 2024 3 317
17 mai 2006 à 09:53
Salut,

pour ton premier problème, la seule solution que je connaisse est de donner le focus (la sélection) à un contrôle qui se trouve en haut du formulaire.

Je te propose donc :

- dans ton formulaire, tu ajoutes un objet, le plus petit possible (un bouton à cliquer de 2 pixels par 2, par exemple) en haut à gauche.
- tu mets le code suivant dans la propriété "sur ouverture" de ton formulaire :
Forms!Nom_Du_Formulaire!Nom_Du_Bouton.SetFocus

A l'ouverture du formulaire, il devrait logiquement donner la main (setfocus) à l'objet, et donc le rendre visible en déplaçant le formulaire le contenant... Mais si tu as déjà un champ en haut à gauche, tu peux le prendre, bien entendu !

C'est pas accadémique, mais ça marche ;-)


Pour ton deuxième problème, il suffit de paramétrer la requête pour qu'elle soustraie 2 mois à la date courante. On utilise pour cela la fonction DateAdd qui ajoute un nombre de périodes à une date donnée :
SELECT Table1.toto, Table1.date
FROM Table1
WHERE ((Table1.date)>DateAdd("m",-2,Now()));

Ici on ajoute -2 unités de mois "m" à la date d'aujourd'hui now()

Ca t'irait ?
2
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
8 mars 2008 à 14:19
Je paraphrase Blux, qu'il ou elle m'en excuse:

On utilise pour cela la fonction DateAdd qui ajoute un nombre de périodes à une date donnée :

DateAdd("m",2,DateInitiale)


Ici on ajoute +2 unités de mois "m" à la date initiale

Ca t'irait ?
1
salut amis!

je veux qu'une date donnée (12/01/2008) devient (12/03/2008) 2 mois de decalage
comment utilser la fonction DATEADD en mode formulaire?
merci
-1