Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/06/2011, 09h35   #1
Membre régulier
 
Inscription : novembre 2010
Messages : 151
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : novembre 2010
Messages : 151
Points : 89
Points : 89
Par défaut Verrouiller un formulaire en fonction de la date

Bonjour,

Je voudrais verrouiller le formulaire [Lettres] si la date du jour est supérieure de 15 jours à la date [Date_mailing] contenue dans ce formulaire.

J'ai tenté le code suivant :
Code :
1
2
3
4
5
6
7
8
9
Private Sub Form_Current()
 
    If Date - Me.Date_mailing > 15 Then
      Me.Form!Lettres.Locked = True
    Else
      Me.Form!Lettres.Locked = False
    End If
 
End Sub
sur l'évennement "Sur activation" mais ça ne fonctionne pas.

J'ai déjà un code, qui lui fonctionne, sur l'évennement "Sur activation" pour un autre formulaire.

Où est l'erreur?

Jean-Pierre
jeanpierre78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2011, 14h45   #2
Membre actif
 
Avatar de Ric500
 
Homme Richard
Ingénieur développement logiciels
Inscription : août 2004
Messages : 166
Détails du profil
Informations personnelles :
Nom : Homme Richard
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Tourisme - Loisirs

Informations forums :
Inscription : août 2004
Messages : 166
Points : 157
Points : 157
Bonjour,

As-tu essayé avec la fonction Datediff?

Code :
1
2
3
4
5
6
7
8
9
10
 
Private Sub Form_Current()
 
    If DateDiff("d",Me.Date_mailing,Date) > 15 Then
      Me.Form!Lettres.Locked = True
    Else
      Me.Form!Lettres.Locked = False
    End If
 
End Sub
Richard.
Ric500 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2011, 16h58   #3
Membre régulier
 
Inscription : novembre 2010
Messages : 151
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : novembre 2010
Messages : 151
Points : 89
Points : 89
Bonjour,

Merci de la réponse. Malheureusement j'ai le même bug au niveau de
Code :
Me.Form!Lettres.Locked = False
Jean-Pierre
jeanpierre78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/06/2011, 11h11   #4
Membre actif
 
Avatar de Ric500
 
Homme Richard
Ingénieur développement logiciels
Inscription : août 2004
Messages : 166
Détails du profil
Informations personnelles :
Nom : Homme Richard
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Tourisme - Loisirs

Informations forums :
Inscription : août 2004
Messages : 166
Points : 157
Points : 157
Bonjour,

Tu peux également donner un format conditionnel à tes contrôles en y mettant la condition suivante:

Code :
DiffDate("j"; [Date_mailing]; Date) > 15
et en cochant le bouton d'activation dans l'écran des conditions...
Ric500 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/06/2011, 12h26   #5
Membre régulier
 
Inscription : novembre 2010
Messages : 151
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : novembre 2010
Messages : 151
Points : 89
Points : 89
Bonjour,

Merci de vos réponses. J'ai résolu mon problème à l'aide d'une macro. C'est moins élégant mais dans mes compétences.

Jean-Pierre
jeanpierre78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h45.


 
 
 
 
Partenaires

Hébergement Web