XL 2021Quel code permettrait de refermer mon classeur si la date (les 10 derniers caractères du nom du classeur) ne correspondent pas à la date du jour ?
Je cherche un code (que je n'arrive pas à élaborer)
Ma question est dans le titre du fil : Quel code permettrait de refermer mon classeur si la date (les 10 derniers caractères du nom du classeur) ne correspondent pas à la date du jour ?
Par exemple :
aujourd'hui nous sommes le 04 06 2023 et en inversé ça donne 2023 06 04
Par exemple, le classeur de Raissa n'est pas à la date du jour
isiTel_Raissa Dr House 2023 06 05 (correspond aux 10 derniers caractères (espaces inclus))
Je cherche donc le code à mettre dans le classeur Excel s'exécutant à l'ouverture.
Qui refermerait "direct" le classeur avec un p'tit msgbox du genre : c'est pas la date du jour.
Auriez-vous le bon code ?
Merci à toutes et à tous,
Je continue mes recherches.....
@Usine à gaz
Je te laisse finir la macro, car c'est l'heure de mon souper
VB:
Sub test()
Dim vdate$, a$
vdate = Format(Date, "yyyy mm dd")
a = Trim(Right(Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 5), 10))
vdate = Trim(Format(Date, "yyyy mm dd"))
MsgBox a = vdate
End Sub
@Usine à gaz
Je te laisse finir la macro, car c'est l'heure de mon souper
VB:
Sub test()
Dim vdate$, a$
vdate = Format(Date, "yyyy mm dd")
a = Trim(Right(Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 5), 10))
vdate = Trim(Format(Date, "yyyy mm dd"))
MsgBox a = vdate
End Sub
Private Sub Workbook_Open()
Dim Nom$
Nom = ThisWorkbook.Name
If Right(Trim(Mid(Nom, 1, InStrRev(Nom, ".") - 1)), 10) <> Format(Date, "yyyy mm dd") Then ThisWorkbook.Close
End Sub
Private Sub Workbook_Open()
If InStr(Me.Name, Format(Date, "yyyy mm dd") & ".xl") = 0 Then If Workbooks.Count = 1 Then Application.Quit Else Me.Close
End Sub