Ciao, dopo u.Send controllerei lo status code con cui risponde il web server interrogato.
Può essere che la risorsa non esista, che ci sia un errore, ecc. In questo caso in HtmlToText avresti il contenuto della pagina di cortesia o il messaggio d'errore standard.
Il minimo sindacale è aggiungere questo controllo:
httpResponseStatus = CInt(u.Status)
If(httpResponseStatus = 200) Then
HtmlToText = u.responseText
Else
HtmlToText = ""
' puoi gestire altre cose: append nel log errori, ecc.
End If
set u = Nothing