言語仕様としては問題ないです。
ただし、実際には問題がある場合がありえます。
例えば以下のように画面表示できなくした状態でExitSubしてしまうと、その後にユーザーが操作ができなくなる可能性があります。
Sub test()
Application.ScreenUpdating = False
Application.Visible = False
For i = 0 To 2
If i = 1 Then
Exit Sub
End If
Next
Application.Visible = True
Application.ScreenUpdating = True
End Sub
きちんと後始末した後で抜けるならこのような問題は発生しません。
Sub test()
Application.ScreenUpdating = False
Application.Visible = False
For i = 0 To 2
If i = 1 Then
Application.Visible = True
Application.ScreenUpdating = True
Exit Sub
End If
Next
Application.Visible = True
Application.ScreenUpdating = True
End Sub
個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)