Message box échéance de date

Bonsoir,

Pouvez-vous m'aider sur le sujet suivant:

J'ai un tableau dans lequel le personnel qui a suivi des formations a des dates de validité.

Je souhaite qu'une boite s'ouvre et qu'un message d'alerte s'affiche deux mois avant la fin de validité de chaque formation pour chaque cellule. Ceci afin de lancer le recyclage de chaque stagiaire.

Je suis sur Excel 2016.

Je vous joint extract du fichier qui contient plus de 1000 noms.

J'avoue ne pas avoir les compétences nécessaires pour construire cela tout seul.

Merci d'avance pour votre aide.

25class-test-1.xlsx (10.76 Ko)

Bonjour,

Une mise en forme conditionnelle ne serait elle pas plus appropriée ?

Tu sélectionnes toutes tes dates (dans ton exemple, G2 à M15) puis comme formule pour la MFC tu entres celle-ci :

=ET(G2-60<=AUJOURDHUI();G2>AUJOURDHUI())

et tu formate le remplissage en rouge

Bonjour,

Une proposition Récupérer et transformer (Power Query ; natif sous Excel 2016).

A tester avec des données bidons !...

A l'ouverture du fichier, la feuille "Accueil" liste le recyclage des stagiaires.

A te relire.

Cdlt.

35class-test-1.xlsm (32.06 Ko)

Bonjour à tous,

Merci beaucoup pour vos réponses. Je vais tester et vous dire ce qu'il en est.

Jean-Eric, je ne comprends pas ce que veut dire: Je ne répond pas aux M.P. non solicitées.

Si j'ai blessé quelqu'un, ce n'est pas volontaire. Je cherche juste à me faciliter la vie, a évoluer aussi mais c'est parfois compliqué de trouver le temps et les neurones

Merci encore.

Bonjour,

Dans mes essais, j'ai cet affichage qui apparaît.

2018 11 17 1

J'ai voulu tester en changeant les dates et ça ne fonctionne pas.

Pouvez-vous me donner la marche à suivre pour appliquer vos formules?

Merci,

Franck

Bonjour Jean-Eric,

Lorsque j'ouvre ton fichier, j'ai cet affichage:

2018 11 17 4

Est-ce que je dois avoir des autorisations particulières sur mon PC?

Si je dois réécrire le programme, quel est-il?

Merci,

Franck

Ton classeur avec la MFC :

Bonjour Theze,

Merci pour ta réponse.

Je ne comprends pas pourquoi ça ne fonctionne pas avec mon Excel.

C'est normal que je ne vois pas ta formule dans la MFC?

Je vais rentrer à la main la formule.

Theze,

Je viens d'écrire la formule précédente dans un classeur d'essai et elle ne fonctionne pas!

Qu'est-ce qui se passe?

Je cherche,...

Theze,

Je viens de réessayer et ce coup-ci cela fonctionne!

2018 11 17 2

La formule prend en compte G mais on applique à G2:M15. Peux-tu m'expliquer?

Bonsoir Jean-Eric,

Lorsque je veux appliquer un programme VBA voici ce que cela affiche.

Que puis-je faire?

Merci,

Franck

Re,

Je ne comprends pas !?

Cdlt.

Bonsoir,

Lorsque je veux modifier des dates dans la feuille 2, il ne se passe rien dans la feuille 1.

Comment fonctionne ce programme?

Si je pouvais comprendre ce que vous m'avez envoyé, ce serait vraiment un plus!

Merci encore pour votre attention.

Franck

Bonjour,

Dans le nouveau fichier joint, recopie les 3 lignes( hors du tableau) de la feuille Données à la fin du tableau.

Celui va se redimensionner.

Sélectionne ensuite la feuille Accueil. Que constates-tu ?

A te relire.

Cdlt.

17class-test-1.xlsm (32.67 Ko)

Bonjour Jean-Eric,

Il ne se passe rien.

J'envoie trois print écran pour montrer ce que j'ai fait.

Le principe de récupérer les évolutions de dates du tableau est très intéressant.

Si on pouvait s'accrocher et trouver la solution.

Merci d'avance,

Bon dimanche

Franck

2018 11 18 2018 11 18 2 2018 11 18 1

Re,

Si tu ne travailles pas avec Excel 2016, tu dois installer le complément gratuit Power Query (32 ou 64bits, suivant ta version Office).

Cdlt.

Bonjour,

En ce qui concerne la MFC, dans le classeur que j'ai posté, tu sélectionnes de G2 à M15 puis MFC ---> "Gérer les règles..." là, tu vois la formule. C'est le fait de sélectionner la plage qui fait que la MFC lui soit appliquée !

Bonsoir Theze,

Merci pour ces précisions. J'ai toujours besoin de ces informations supplémentaires.

La MFC a bien fonctionné.

Je souhaite maintenant que la partie VBA soit active du fait de sa puissance conjuguée à la discrétion.

J'ai passé une bonne partie de mon après-midi à faire des recherches sur le net mais c'est compliqué pour moi tout seul.

Bonne soirée,

Franck

Bonjour,

Si tu veux, en plus de la MFC, un message à l'ouverture du classeur, colles le code ci-dessous dans le module de ce dernier (ThisWorkbook) :

Private Sub Workbook_Open()

    Dim Tbl As ListObject
    Dim Cel As Range
    Dim Chaine As String
    Dim I As Integer

    Set Tbl = Worksheets("Feuil1").ListObjects("Tableau1")

    For I = 7 To 13

        For Each Cel In Tbl.ListColumns(I).DataBodyRange

            If Cel.Value - 60 <= Date And Cel.Value > Date Then

                Chaine = Chaine & "'" & Tbl.ListColumns(2).DataBodyRange.Cells(Cel.Row - 1).Value & "' " _
                         & Cel.Value & _
                         " pour la formation '" & Tbl.HeaderRowRange(, Cel.Column) & "'" & vbCrLf

            End If

        Next Cel

    Next I

    If Chaine <> "" Then Chaine = "Les formation pour les personnes suivantes arrivent à termes !" & vbCrLf & Chaine

    MsgBox Chaine

End Sub

Attention, pour mon exemple, le tableau structuré se nomme "Tableau1" (voir en début de code) donc, à adapter !

Bonsoir Theze,

Tout d'abord, merci pour ton aide tout comme Jean-Eric. Quand je vois l'heure à laquelle vous envoyez vos messages, je me demande si vous dormez de temps en temps!

J'ai mis dans le fichier le programme que tu as envoyé et j'ai le message suivant ci-dessous:

Merci,

Franck

Microsoft Visual Basic pour Applications

Erreur d'exécution '9':

L'indice n'appartient pas à la sélection.

OK Aide

Rechercher des sujets similaires à "message box echeance date"