XL 2019 Boucle For...Each non fonctionnel et autres soucis de traitement

Hutchy33

XLDnaute Nouveau
Bonjour à tous,
J'ai plusieurs soucis de traitement sur le fichier joint. Actuellement je suis en train de m'énerver sur ce fichier car cela fait plusieurs jours que je suis dessus, j'ai défait et refait sans succès, et à force l'énervement prend le dessus et je n'arrive plus à rien (je sais c'est pas bien!). Je m'explique:
Dans le fichier joint l'utilisateur doit renseigner des données, notamment la date de fin d'une action à réaliser dans la colonne K. Au moment de la sélection de cette colonne une Inputbox demande à l'utilisateur le nombre de jour qu'il souhaite paramétrer pour l'alerte visuelle couleur lorsque l'on approche de la date de fin de l'action. J'écris ce paramètre en Q12. Jusque ici tout fonctionne.
Dans la colonne L (Échéance) je dois retrouver (de façon automatique) le nombre de jours restant jusqu'à la fin de l'action prévue, et un code couleur sur la cellule en fonction de l'alerte paramétrée par l'utilisateur (rouge si date du jour supérieur à la date de fin, marron si nombre de jours restant jusqu'à la date de fin se trouve dans le critère paramétré).
Lorsque j'exécute la macro Échéance pour que la colonne L se mette à jour sur le nombre de jours restant jusqu'à la date de fin de l'action prévue, ma macro se déroule bien au début, la différence entre date du jour et date de fin d'action s'inscrit bien dans la cellule mais du fait du signe négatif (-) que j'obtiens en résultat ma cellule ne devient jamais rouge.
J'ai tenté d'utiliser la fonction Mid sans succès.
De plus dans mon code j'utilise une boucle For Each pour que ce traitement se fasse pour chaque date contenue dans la colonne K, et une msgbox pour dire "fin de traitement", sauf que cette boucle ne fonctionne pas, le code continu même si je n'ai plus de date dans K :(
Please une âme charitable pour un coup de pouce s'il vous plait.

(mon code ne plaira peut-être pas à certain d'entre vous, mais je suis débutant en vba)

Merci beaucoup
 

Pièces jointes

  • test.xlsm
    16.5 KB · Affichages: 9

Staple1600

XLDnaute Barbatruc
Re

Comme dit précédemment (mais tu sembles ne pas l'avoir vu) DateDif peut poser problème.

NB: On peut paramétrer une MFC
Et une MFC risque rarement de faire une boucle For Each non fonctionnelle ;)

Conseil en passant (puisque toi-même tu indiques débuter en VBA)
Eviter autant que faire se peut (remember JP) d'employer VBA et privilégier les fonctions natives d'Excel.
Surtout si le classeur est destiné à un tiers.
Car quand s'affiche la fenêtre de débogage de VBE, souvent l'utilisateur ne sait pas quoi faire ?

Alors qu'un classeur avec les formules idoines, les MFC idoines, les contrôles de formulaires qui vont bien permettent de faire des outils à destination d'utilisateurs novices d'Excel.

NB: je parle d'expérience.
Plus je diffuse des outils simples à mes collègues, moins ils viennent frapper à ma porte pour me dire que le classeur a planté ;)
 

Discussions similaires

Réponses
4
Affichages
134
Réponses
3
Affichages
252
Réponses
11
Affichages
473

Statistiques des forums

Discussions
311 720
Messages
2 081 925
Membres
101 841
dernier inscrit
ferid87