2013-12-19 3 views
0

Возможно, это очень маленькая вещь, которую мне не хватает, но я не могу понять эту проблему.Проблема с HYPERLINK

Sub sendemail() 

'Save the form with todays date 
Application.Save Format(Now, "dd-mm-yy") & ".xls" 

'Create the email 
Dim OutApp As Object 
Dim OutMail As Object 
Dim strbody As String 

Set OutApp = CreateObject("Outlook.Application") 
Set OutMail = OutApp.CreateItem(0) 

strbody = "<HTML><BODY>" 
strbody = strbody & "<A href= http://ne-xxx.xxx.xxx.xxx.biz/ASP/SFP/BHGP/xxUK-OPS/Shared%20Documents/xxx/AllItems.aspx?RootFolder=%2fAxP%2fASP%2fBP%2fNUK%2dOPS%2fShared%20Documents%2f60%2e%20Shift%20Schedule&FolderCTID=&View=%7b1A03DBA9%2d7CEB%2d466F%2d8EA8%2dDDE03D95CDC0%7d>URL</A>" 
strbody = strbody & "</BODY></HTML>" 
On Error Resume Next 

With OutMail 
    .To = "[[email protected]]" 
    .cc = "" 
    .BCC = "" 
    .Subject = "New Holiday Request on " & Format(Now(), "dd/mm/yyyy") & " by " & Range("C2") & "" 
    .Body = strbody 
    .Send 

End With 
On Error GoTo 0 
Set OutMail = Nothing 
Set OutApp = Nothing 
Debug.Print strbody 

End Sub 

Конечный результат должен быть просто гиперссылкой по электронной почте ... но он показывает:

http://ne-xxx.xxxx.xxx.xxxx.xxx/sSP/SXP/BJHJP/ ххх-OPS/Shared% 20Documents/Формы/AllItems.aspx? RootFolder =% 2fASP% 2fSsP% 2foP% 2fNBXUK% 2dOPS% 2fShared% 20Documents% 2f60% 2e% 20Shift% 20Schedule & FolderCD = & Посмотреть =% 7b1A03DBA9% 2d7CEB% 2d466F % 2d8EA8% 2dDDE03D95CDC0% 7d> URL

+1

попробовать обертывание URL в apostrophies – Moob

+0

Вам нужно удвоить кавычки, href = "" http: /// ... "" –

+0

, похоже, не работает – user3013325

ответ

1

, пожалуйста, используйте ниже блока кода

strbody = strbody & "<A href=""http://ne-xxx.xxx.xxx.xxx.biz/ASP/SFP/BHGP/xxUK-OPS/Shared%20Documents/xxx/AllItems.aspx?RootFolder=%2fAxP%2fASP%2fBP%2fNUK%2dOPS%2fShared%20Documents%2f60%2e%20Shift%20Schedule&FolderCTID=&View=%7b1A03DBA9%2d7CEB%2d466F%2d8EA8%2dDDE03D95CDC0%7d"">URL</A>"  

.HTMLBody = strbody instead of Body 
0

Изменить

.Body = strbody 

в

.HTMLBody = strbody 

Мой образец VBS код работал с или без кавычек

Set OutApp = CreateObject("Outlook.Application") 
Set OutMail = OutApp.CreateItem(0) 

strbody = "<HTML><BODY>" 
strbody = strbody & "<A href=http://ne-xxx.xxx.xxx.xxx.biz/ASP/SFP/BHGP/xxUK-OPS/Shared%20Documents/xxx/AllItems.aspx?RootFolder=%2fAxP%2fASP%2fBP%2fNUK%2dOPS%2fShared%20Documents%2f60%2e%20Shift%20Schedule&FolderCTID=&View=%7b1A03DBA9%2d7CEB%2d466F%2d8EA8%2dDDE03D95CDC0%7d>URL</A>" 
strbody = strbody & "</BODY></HTML>" 

With OutMail 
    .To = "[email protected]" 
    .HTMLBody = strbody 
    .Send 
End With 

Set OutMail = Nothing 
Set OutApp = Nothing