this works nicely for me
(assuming you have a "label1")
Const delay As Double = 2 'seconds
Private Sub UserForm_Activate()
Dim splash As Double
splash = Now + delay / 60 / 60 / 24
Me.Caption = "I will disappear in " & delay & " seconds"
Me.Label1 = "Wait till " & Format(splash, "hh:mm:ss")
Application.OnTime splash, "KillTheForm"
Private Sub KillTheForm()
and for you the "thisworkbook-code"
Private Sub Workbook_Open()
doing a search for splash screen, surely you will find other methods