Msgbox à l'ouverture date dépassées

Bonjour tout le monde,

J'ai encore un problème avec un code.

je voudrai qu'une message box s'affiche à l'ouverture du fichier si une date (dans les colonnes date de mon fichier) est dépassée à plus de 6 mois

colonne J, X, AL, et AX

J'ai allégé le document pour la confidentialité, sinon les dates descendent jusqu'en ligne 300 environ

Je joint un fichier pour vous faire gagner du temps.

Merci d'avance le forum

Bonjour Mathian03

Voici ce que l'on peut faire

Une ligne de code dans ThisWorkBook pour lancer la vérification et un module qui fait le job

@+

Bonjour Mathian,

Voici une proposition dans le fichier joint.

J'ai crée un nouveau module avec la procédure "Plus_6mois" que tu pourras facilement copier/coller dans ton fichier d'origine.

Il suffit d'appeller cette macro à l'ouverture de Excel:

Private Sub Workbook_Open()
Call Plus_6mois
End Sub

Enfin, par défaut la macro cherche les date dans la feuil active, pour éviter toutes sources d'erreurs tu peux rajouter au début

Sheets("Feuil1").activate

A adapter.

Enfin, les lignes peuvent se répéter dans le message d'erreurs, si cela est génant ca doit pouvoir se corriger en bricolant un peu le code

Je reste disponnible si tu as des questions !

A+

EDIT, Bonjour BrunoM45 je n'ai pas été assez rapide, désolé pour la réponse croisée

Bonjour BrunoM45 et Gabin37,

J'ai seulement jeté un œil sur la proposition de Bruno pour l'instant. Merci bcp à vous deux pour votre temps.

Bruno: lorsque j'ouvre le document que tu m'as transmis, la msgbox apparait bien et la macro fait le bon boulot.

Cependant, lorsque j'ai mis la macro dans mon classeur il y a un bug sur cette ligne:

 If DateDiff("m", .Range(TabCol(Ind) & Lig), Date) > 6 Then

Je ne comprends pas pourquoi ? Peut-être qu'il faut modifier les variables car j'ai bcp plus de dates dans mon classeur ?

Re,

J'ai maintenant regardé ta proposition Gabin

J'ai également un bug qui apparait lorsque j'ajoute la macro dans mon classeur, à cette ligne

If DateAdd("m", 6, Cel) < today Then

Sais-tu pourquoi ?

Merci pour ton temps en tout cas

Re, je pense que le bug que tu as est commun à nos deux programme.

Je pense que c'est parce que certaines cellules contiennent autre chose que des dates

Peux-tu nous donner plus d'info sur le message d'erreur ?

Re,

en effet, j'avais des cellules avec de "?" que j'avais mis lorsque je n'avais pas de date associée au produit.

J'ai également des cellules vides, mais ça n'a pas l'air de poser problème car la macro fonctionne bien mtn.

Merci bcp à toi et aussi à Bruno !

Bonne journée et bonne semaine

Re,

Désolé, je vous redérange rapidement

Je voulais personnaliser ma msgbox avec un "vbExclamation" et un "vbOKOnly", cependant, je ne parviens pas a adapter tout ça a la macro…

J'ai essayé quelque chose comme ça

If resultat <> "" Then MsgBox="La bibliothèque contient des produits dont la dates est depassées de + 6mois", vbokonly + vbexclamation,"Attention "

Pouvez vous m'aider svp ?

Merci d'avance

If resultat <> "" Then MsgBox "La bibliothèque contient des produits dont la dates est depassées de + 6mois", vbokonly + vbexclamation,"Attention "

re, si tu enlève le "=" ça devrait marcher sans problème ?

Re,

Oui ça fonctionne, problème résolu rapidement ahah

Merci encore

Bonne journée !

Re-re,

Désolé de te déranger encore Gabin il y qlq chose qui m'échappe, il semble que le programme ne marche pas pour la colonne AX.

J'ai testé ouvrir/fermer le fichier en mettant une date dépassée, et la message box ne s'affiche lorsque cette date dépassée est dans la colonne AX

Pourtant dans le code, cette partie est identique aux autres ?

Dans l'attente de ton retour

Merci bcp

Mathian03

Et mon fichier... non... bon à mettre à la poubelle

Vous savez que votre bug venait de la saisie de "?" dans les cellules date

@+

@BrunoM45 à raison, tu dverais tester son fichier il est mieux "codé" que le miens

Cependant, je ne vois pas d'où vient le problème ! J'ai testé de mon coté cela fonctionne, est-tu sûr que tes cellules sont bien au format date comme il se doit ?

Bruno et Gabin

Les deux fichiers marchent, j'en ai choisi un des deux au hasard, je n'y connais pas grand chose

Oui en effet, l'erreur venait des "?"

Je vais regarder tout ça, merci à vous deux pour votre aide !

Re,

Si ce problème de date est récurent, on peut ajouter un test ISDATE()

Voici mon fichier corrigé

Après peu importe celui que vous utilisez, mais il faut tester les 2 et l'indiquer

@+

Rechercher des sujets similaires à "msgbox ouverture date depassees"