There are several ways to do it, but all with the same side-effect. If user SHIFT + ENTER 2 times, they will result in 1 new line also
Solution 1: 'Replace 2 newline into 1 newline
'vbCrLf is actually Chr(13) & Chr(10)
mail.HTMLBody = Replace(mail.HTMLBody, vbCrLf & vbCrLf, vbCrLf)
Solution 2: 'Replace any extra newline into "" there will be an extra blank link at the very end
tmp = Split(mail.HTMLBody, vbCrLf)
For Each Line In tmp
If Line <> "" Then
newBody = newBody & Line & vbCrLf
End If
Next
mail.HTMLBody = newBody