Option Explicit
Sub Workbook_Open() '<----goes in ThisWorkBook
On Error Resume Next
Dim Edate As Date
Dim sh As Worksheet
Edate = Format("30/11/2016", "DD/MM/YYYY")
If Date > Edate Then
MsgBox ("This Workbook was valid up to " & Format(Edate, "dd-mmm-yyyy")) & vbNewLine & _
("It is now a Read Only Document"), vbExclamation, "Tools"
For Each sh In Worksheets
With sh
.Unprotect Password:="password"
.Cells.Locked = True
.Range("A:XFD").Locked = True
Run "deleteButtons", sh
Run "deleteHover", sh
.Protect Password:="password"
End With
Next
ActiveWorkbook.Save
End If
End Sub