Afficher un message si une date de naissance = date du jour

Laguamar

XLDnaute Nouveau
Salut,

J'ai un fichier excel avec en feuil2 un tableau de A1 à B15 avec en col A les dates de naissance (jour+mois seulement) et en col B le nom des personnes. J'ai en feuil1 cell A1 la date du jour =aujourdhui() et je souhaite afficher un message "Bon anniversaire Untel" lorsque ma date du jour correspond à l'une des dates de naissance de mon tableau en feuil2. Ex. ci-joint.

Merci par avance !
 

Pièces jointes

  • Anniv.xls
    27.5 KB · Affichages: 61

phlaurent55

Nous a quittés en 2020
Repose en paix
Bonjour Laguamar, et bienvenue sur le forum

avec ce code dans ThisWorkBook


Code:
Private Sub Workbook_Open()
flag = 0
texte = "Bonne Anniversaire à  "
For i = 2 To Sheets("Feuil2").Range("A65535").End(xlUp).Row
If Day(Sheets("Feuil2").Cells(i, 1)) = Day(Date) And Month(Sheets("Feuil2").Cells(i, 1)) = Month(Date) Then
texte = texte & Sheets("Feuil2").Cells(i, 2) & " et à "
flag = 1
End If
Next i
texte = Left(texte, (Len(texte) - 6))
If flag = 0 Then texte = "PAS D'ANNIVERSAIRE AUJOURD'HUI"
Sheets(1).[A2] = texte
Application.Speech.Speak [A2]
End Sub


à+
Philippe
 

Pièces jointes

  • 111.xlsm
    17.5 KB · Affichages: 55
Dernière édition:

Modeste geedee

XLDnaute Barbatruc
Bonsour®
Salut,
je souhaite afficher je souhaite afficher un message "Bon anniversaire Untel" lorsque ma date du jour correspond à l'une des dates de naissance de mon tableau en feuil2. Ex. ci-joint.

Merci par avance !
en A2 ( pas de cellules fusionnées !!!)
=SIERREUR("Bon Anniversaire " & INDEX(Feuil2!$B$2:$B$100;EQUIV(TEXTE(AUJOURDHUI();"mmjj");TEXTE(Feuil2!$A$2:$A$100;"mmjj");0));"")
Validation matricielle (Ctrl+ Maj + Entrée)
upload_2017-8-18_11-30-13.png
 

Pièces jointes

  • Anniv (1).xls
    50 KB · Affichages: 73
Dernière édition:

Laguamar

XLDnaute Nouveau
Bonjour Laguamar, et bienvenue sur le forum

avec ce code dans ThisWorkBook


Code:
Private Sub Workbook_Open()
flag = 0
texte = "Bonne Anniversaire à  "
For i = 2 To Sheets("Feuil2").Range("A65535").End(xlUp).Row
If Day(Sheets("Feuil2").Cells(i, 1)) = Day(Date) And Month(Sheets("Feuil2").Cells(i, 1)) = Month(Date) Then
texte = texte & Sheets("Feuil2").Cells(i, 2) & " et à "
flag = 1
End If
Next i
texte = Left(texte, (Len(texte) - 6))
If flag = 0 Then texte = "PAS D'ANNIVERSAIRE AUJOURD'HUI"
Sheets(1).[A2] = texte
Application.Speech.Speak [A2]
End Sub


à+
Philippe
 

Laguamar

XLDnaute Nouveau
Merci beaucoup pour votre aide. Je suis désolé je bricole en Excel mais quand je bloque et que des geeks me répondent parfois avec un langage qui me dépasse je ne comprends pas toujours la solution. Alors je fournis le fichier excel qui leur prendra 3 minutes à corriger. Je me suis fait défoncer sur les autres forums Excel alors que je n'étais pas mal intentionné. Alors mille excuses pour le dérangement mais vous m'avez été d'une grande aide
 

Discussions similaires

Statistiques des forums

Discussions
311 730
Messages
2 081 989
Membres
101 856
dernier inscrit
Marina40