A me pare che
Catch ex As WebException
non funziona
perchè quando il programma non presenta
nel textBox l'ora non succede niente:
non da il messaggio atteso.

codice:
Imports System
Imports System.Net
ecc...
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

       Try
            sourceString = New WebClient().DownloadString("http://tycho.usno.navy.mil/cgi-bin/timer.pl")
        Catch ex As WebException
            MsgBox("Non Pronto")
            Console.WriteLine(ex.Message)
        End Try
 
      ecc...
      
       TextBox1.Text = n4.ToString("00") & ":" & n2.ToString("00") & ":" & n3.ToString("00")