Sub test()
Dim fichier$, OldWeek As Long, ActualWeek As Long, réponse As VbMsgBoxResult
fichier = "C:\Users\polux\DeskTop\fichierAouvrir.xlsm"
'récupération de la date du dernier accès (Attention!!!! en string !!!!!!)
With CreateObject("Scripting.FileSystemObject").GetFile(fichier)
OldWeek = ISOWEEK2007(CDate(Mid(.DateLastAccessed, 1, 10)))
ActualWeek = ISOWEEK2007(Date)
End With
If ActualWeek = OldWeek Then Exit Sub ' si cette date + 7 jour est plus grand que la date du jour on sort de la sub
'sinon on a la question avec le message (si on veut ou pas l'ouvrir)
reponse = MsgBox("Renseigner la carte de ctrl XXXXX", vbYesNo And vbExclamation, "Remplir la carte de ctrl")
If reponse = vbOK Then
ThisWorkbook.FollowHyperlink fichier, , True
End If
End Sub
Function ISOWEEK2007(dat As Date)
Dim X&
X = CLng(dat)
ISOWEEK2007 = Evaluate("= TRUNC((" & X & "-WEEKDAY(" & X & ",2)+11-DATE(YEAR(" & X & "-WEEKDAY(" & X & " ,2)+4),1,1))/7)")
End Function