OVH Cloud OVH Cloud

Faire afficher message à l'ouverture d'une BD

3 réponses
Avatar
Butch
Bonjour,

J'aimerais savoir comment faire afficher automatiquement un message à
l'ouverture d'une base de données mais seulement à partir d'une date
précise, peu importe l'année en cours.

Ex: Faire afficher un message lorsque la BD est ouverte le 31 mars ou après,
peu importe l'année?

Idéalement, il faudrait aussi que l'usager puisse disposer d'une option
comme "Ne plus afficher ce message", lorsqu'il a lu l'information à
l'ouverture de la BD afin que le message ne revienne pas constamment...¸
mais que ce message revienne automatiquement au prochain 31 mars ou après,
de l'année suivante.

Je ne sais pas si tout cela est possible (et si c'est assez clair!).

Merci à l'avance.
Butch

3 réponses

Avatar
Le Méruvien
Bonjour, à mon avis c'est possible, tu fait une macro autoexec, qui t'ouvre
le formulaire avec ton message, et tu met une condition, "si
format(date();"jj/mm" = "31/03"

"Butch" a écrit dans le message de news:
hBzhb.38412$
Bonjour,

J'aimerais savoir comment faire afficher automatiquement un message à
l'ouverture d'une base de données mais seulement à partir d'une date
précise, peu importe l'année en cours.

Ex: Faire afficher un message lorsque la BD est ouverte le 31 mars ou
après,

peu importe l'année?

Idéalement, il faudrait aussi que l'usager puisse disposer d'une option
comme "Ne plus afficher ce message", lorsqu'il a lu l'information à
l'ouverture de la BD afin que le message ne revienne pas constamment...¸
mais que ce message revienne automatiquement au prochain 31 mars ou après,
de l'année suivante.

Je ne sais pas si tout cela est possible (et si c'est assez clair!).

Merci à l'avance.
Butch




Avatar
3stone
Salut,

"Butch" a écrit
| J'aimerais savoir comment faire afficher automatiquement un message à
| l'ouverture d'une base de données mais seulement à partir d'une date
| précise, peu importe l'année en cours.
|
| Ex: Faire afficher un message lorsque la BD est ouverte le 31 mars ou après,
| peu importe l'année?
|
| Idéalement, il faudrait aussi que l'usager puisse disposer d'une option
| comme "Ne plus afficher ce message", lorsqu'il a lu l'information à
| l'ouverture de la BD afin que le message ne revienne pas constamment...¸
| mais que ce message revienne automatiquement au prochain 31 mars ou après,
| de l'année suivante.


Crée un table, "T_Message" avec un seul enregistrement et deux champs ...
- le premier, un ou/non nommé "chkAfficher"
- le second, un champ date nommé "DatePivot"

Crée un petit formulaire basé sur la table et place sur le formulaire
- une étiquette qui contient ton message
- le checkbox qui provient de ta table avec son étiquette qui contient
le texte... "Afficher ce message à la prochaine ouverture"
- ajoute éventuellement un bouton pour fermer le formulaire.

Crée un nouveau module dans lequel tu colle la fonction suivante:

'--- début -------------------------
Function AfficherMessage()
On Error Resume Next
Dim d As Date
Dim dp As Date
Dim c As Boolean

'// Lire la table
dp = DLookup("DatePivot", "T_Message")
c = DLookup("chkAfficher", "T_Message")

'// Créer la date pivot annuelle
d = DateSerial(Year(Date), Month(dp), Day(dp))

'// Avant la date pivot
If c = False And Date < d Then
CurrentDb.Execute "Update T_Message Set chkAfficher = True"
End If

'// Après la date
If c = True And Date >= d Then
DoCmd.OpenForm "frm_Message"
End If
End Function
'--- fin -------------------------------

Sauve ce module sous le nom "mod_AfficheMessage"

Crée une marco que tu nommera "AutoExec"
Dans la ligne "Action", tu choisi par la liste déroulante "ExécuterCode"
dans le bas, comme nom de la fonction, écris "AfficherMessage()" sans les guillemets, bien sûr!!

Voilà, il te reste à cocher la case une première fois dans la table
et à y mettre la date *entière* souhaitée.
La fonction ne tiendra pas compte de l'année.


PS: Pour que le message "revienne" automatiquement, il faut que la base
soit ouverte au moins une fois entre le 1er janvier et la date pivot.

--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
Avatar
philippe
Salut, je ne connais pas vraiment la réponse à ton
problème, mais j'ai vu un exemple de ce type dans les
exemples d'access (voir la base de données exemple les
comptoirs) si ça peux t'aider
A +

-----Message d'origine-----
Bonjour,

J'aimerais savoir comment faire afficher automatiquement
un message à....