[VB sous Access] pb d'affichage de date

kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention   -  
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,j voudrais afficher dans un état sous access 2003 des dates.J'ai un état qui affiche une liste de produit pharmaceutiques avec leur date de péremption mais je voudrais afficher les dates de péremption les plus proches en rouges et toutes les autres restantes en bleu.Vraiment aidé-moi,merci d'avance pour votre aide
A voir également:

14 réponses

mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour,

je te propose ce bout de code à mettre (et à adapter selon tes besoins) dans ton état sur le champs Date de péremption

Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
If Month(DatePeremption) = Month(Date) And Year(DatePeremption) = Year(Date) Then
Me.DatePeremption.BackColor = 255
Else
Me.DatePeremption.BackColor = 16777088
End If
End Sub

Bien sûr la condition doit être modifiée selon ce que tu veux dire par " les dates de péremption les plus proches ". Dans mon cas j'ai précisé le mois et l'année en cours.


Bonne chance !!
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
voici c kil mafiche kom erreur <<Erreur d'exécution'94'>>
<<Utilisation incorrect de Null>>
j fais quoi?
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
scuse j'ai vu l'erreur que j'ai faite le code fonctionne a moitié c a dire kil nafiche pa les dates en couleurs mais pluto en noir couleur standard
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
jai mis le code comme il se dot dans le champ datexp de l'état mais rien ne se produit il affiche toutes les dates en noir car voici le code selon mes besoins:
Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
If Month(datexp) <= Month(date) And Year(datexp) <= Year(date) Then
Me.datexp.BackColor = 255
Else
Me.datexp.BackColor = 16777088
End If
End Sub
cela ne paas toujours pa!que doit-je faire
0
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Ben j'ai testé ton code chez moi et je peux te dire cela marche (bien sur je n'ai pas le meme champ que toi). Est ce que ton champ se nomme bien datexp ??
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Qu'est ce que tu veux faire exactement ??

Effectivement, le code que je t'ai fourni t'affiche le le champ "Date de péromption" avec un fond en couleur avec le texte en noir mais si tu veux afficher le texte directement en couleur et non pas le fond, il suffit de remplacer BaclColor par ForeColor :

Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
If Month(DatePeremption) = Month(Date) And Year(DatePeremption) = Year(Date) Then
Me.DatePeremption.ForeColor= 255
Else
Me.DatePeremption.ForeColor= 16777088
End If
End Sub


au lieu de :

Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
If Month(DatePeremption) = Month(Date) And Year(DatePeremption) = Year(Date) Then
Me.DatePeremption.BackColor= 255
Else
Me.DatePeremption.BackColor= 16777088
End If
End Sub


Est ce que j'ai répondu à ta question ?
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
If Month(datexp) <= Month(date) And Year(datexp) <= Year(date) Then
Me.datexp.ForeColor = 255
Else
Me.datexp.ForeColor = 16777088
End If
End Sub
toujours rien lorsque je passe en mode impression
0
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Ha tu répond plus vide que moi ... j'ai répondu un peu plus haut...

ton champs se nomme bien datexp ??
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
ui c bien datexp!!
mais comment se fait il que ca ne passe toujours pa?
0
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Petite précision quand même, est ce tu as pensé à mettre le Style de fond de ton champ en standard et non pas en Transparent ?? Je ne vois que ça sinon je ne sais pas quoi te dire ... :-(

Style de fond=Standard
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
joubliais c un control textbox que jutilise dans l'état et comme source de controle dans les propriétés datexp l nom de la propriété de la table Produit
0
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Ca ne change rien que ce soit un TexteBox. Du moment que tu as pour ton champ ...


Nom = datexp (onglet Autres)
Source contrôle = datexp (Onglet Données)
Style fond = Standard (onglet Format)


définie de cette manière, cela devrait fonctionner.
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
Vraiment aucun effet. c bizarre pkoi cela ne fonctionne pas?jai appliké tt c ke tu ma recommendé.Je te di vraiment merci pour ta disponibilité et ton aide néamoins si tu as toujours d'autres solutions à maporter jsui toujours là
0
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Ben sinon si tu as la possibilité de m'envoyer la partie de ta base avec l'état concerné je pourrais y jeter un coup d'oeil.. enfin moi je travaille sous Access 2000 mais je peux aussi vérifier sous Access 2003 (XP). Tu as juste à mettre la table concerné et/ou la requete + l'état, cela suffira.
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
voici la requete:SELECT PRODUIT.codprod, PRODUIT.nomprod, PRODUIT.dosage, PRODUIT.presen, PRODUIT.condi, PRODUIT.datexp
FROM PRODUIT
GROUP BY PRODUIT.codprod, PRODUIT.nomprod, PRODUIT.dosage, PRODUIT.presen, PRODUIT.condi, PRODUIT.datexp;
comment faire pour tenvoyer l'état jne sai pa le faire
0
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
Déja sous quel version travailles tu ? Tu n'a qu'a m'envoyer une version light de ta base sur ce mail : mishan@hotmail.fr

Quand je dis light c'est la base contenant le able Produit, la requete si elle existe et l'état (en fait tu en fait une nouvelle quoi dans laquelle tu met ces info c'est tout)
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
scuse moi mai jai un blem avecma connexion a hotmail donc j balance sur yahoo.fr
0
phil_232 Messages postés 286 Date d'inscription   Statut Membre Dernière intervention   33
 
Nom = datexp (onglet Autres)
Source contrôle = datexp (Onglet Données)
Style fond = Standard (onglet Format)

mais aussi pour les propriétés de la section détail

OnPrint = [prodédure événementielle] (onglet code)
0
kisprod Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
cè c ke javais deja fait mais c ne pass toujours pas
Maintenat j'ai déclaré datexp comme date dan les code là il maffiche tte les dates en rouges c nè pa normal
0
mishan Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   1
 
excuse moi , j'ai bien reçu ton mail mais je ne peux pas détacher le fichier que tu as joint.. je t'ai envoyé un mail sur on adresse yahoo... peux tu me répondre ?
0