Problème macro

J

jeanclaude57

Guest
Bonjour le forum

J'ai une macro qui fonctionne avec un bouton et oû il y a des erreurs.

Je voudrais sur le fichier que je joins que les dates qui sont dans la

colonne E de Suivi Devis apparaissent en rouge dans la feuille

Relance si ces dates sont antérieur à la date du jour.

Merci
[file name=Jeanclaude57.zip size=17876]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Jeanclaude57.zip[/file]
 

Pièces jointes

  • Jeanclaude57.zip
    17.5 KB · Affichages: 9
  • Jeanclaude57.zip
    17.5 KB · Affichages: 18
  • Jeanclaude57.zip
    17.5 KB · Affichages: 18

Abel

XLDnaute Accro
Bonjour jeanclaude57, le forum,

Vers la fin de la procédure (celle qui est dans la feuille) :

Code:
For I = 2 To Range('D65536').End(xlUp).Row
    If Cells(I, 4).Value < date_auj Then
        Cells(I, 4).Font.ColorIndex = 3
    End If
Next I

Tu faisais la comparaison avec la colonne 3. C'est à dire celle de 'Mr Martin'. En mettant colonne 4 (D), ça marche mieux.

D'autre part, enlève la procédure qui est dans le module 'bouton1 quand clic'. Elle est en doublon avec celle qui est dans la feuille.

En espérant que cela te dépanne.

Abel.

Edition : d'ailleurs, pourquoi 'For i=2 to ...' et non 'For i=3 to ...'

Message édité par: Abel, à: 30/09/2005 11:05
 
J

jeanclaude57

Guest
Merci pour ta réponse Abel

Je ne connais rien à VBA
Pourrait tu être plus explicite au sujet du boutton stp ?

et la ligne là veut dire quoi ?

If Cells(I, 4).Value < date_auj Then
Cells(I, 4).Font.ColorIndex = 3

Autrement ça fonctionne.

Par contre là je suis sur excel 2003 mais au boulot oû je veux utiliser le fichier je suis sous 97 et les macros ne fonctionnent pas .Y a t'il un problème de compatibilité ?

Merci encore
 

Abel

XLDnaute Accro
Re,

Quand tu es dans VBE, sur ton projet il y a 2 'Module'.
Dans 'Module2', tu as un 'Private Sub CommandButton1_Click()'.
Cette macro vient en doublon de celle qui est dans 'Feuil75(Relance)'.
Supprime celle qui est dans 'Module2'.

Sauf si cette feuille 'Relance' doit se répéter.
Dans ce cas, mets les code suivants :
Dans chaque feuille 'Relance x' :

Private Sub CommandButton1_Click()
MaJ_Relance
end sub

Et renomme la procédure du 'Module2' en :

Sub MaJ_Relance()
(c'est un exemple de nom).

Cela permettra de ne pas répéter le code.
Je ne l'ai pas revérifié mais il faudrait peut être le compléter un peu, dans ce cas, pour qu'il n'y ait pas d'ambiguité avec les noms de feuille.

Les lignes :

If Cells(I, 4).Value < date_auj Then
Cells(I, 4).Font.ColorIndex = 3

Veulent dire : si la valeur de la cellule I,4 (ligne I, colonne 4) est inférieure au contenu de la variable 'date_auj' alors mettre la police de la cellule I,4 à la couleur n° 3 (qui correspond au rouge).

Abel.
 

Abel

XLDnaute Accro
Re,

Oups !
J'ai oublié.

Oui, il y a des fonctions supplémentaires par rapport à 97.
Malheureusement, comme ça, je ne saurais te dire lesquelles sont concernées dans le code que tu nous as transmis.
Je n'ai plus de 97 sous la main.


Abel.
 

Discussions similaires

Statistiques des forums

Discussions
312 228
Messages
2 086 421
Membres
103 205
dernier inscrit
zch