Try this, it will close the message box after the timer times out.
'Form Code
Private Declare Function SetTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Private Sub cmdShowMsg_Click()
'// this shows a messagebox...