我已经创建了一个表,并根据MS Access中的查询通过电子邮件发送该表,并且其中一个字段是指向服务器上文件的超链接。当模块运行并在Outlook中创建表时,超链接只是文件在服务器上的位置的文本。我的HTML实力不是那么强,所以我很难调试为什么无法获得该字段来创建超链接,而不仅仅是文件位置作为文本。下面我尝试在电子邮件表中为“ DRAWING LINK”创建超链接:
"<tr>" & _
"<td bgcolor='#7EA7CC'> <b>Job Number</b></td>" & _
"<td bgcolor='#7EA7CC'> <b>Stock Number</b></td>" & _
"<td bgcolor='#7EA7CC'> <b>Material and Spec</b></td>" & _
"<td bgcolor='#7EA7CC'> <b>Order Size</b></td>" & _
"<td bgcolor='#7EA7CC'> <b>Days In Processing</b></td>" & _
"<td bgcolor='#7EA7CC'> <b>Drawing Link</b></td>" & _
"</tr>"
i = 0
Do While Not rs.EOF
If (i Mod 2 = 0) Then
rowColor = "<td bgcolor='#FFFFFF'> "
Else
rowColor = "<td bgcolor='#E1DFDF'> "
End If
strMsg = strMsg & "<tr>" & _
rowColor & rs.Fields("Job Number") & "</td>" & _
rowColor & rs.Fields("Commodity Code") & "</td>" & _
rowColor & rs.Fields("Spec") & "</td>" & _
rowColor & rs.Fields("Ord") & "</td>" & _
rowColor & rs.Fields("Idle") & "</td>" & _
rowColor & rs.Fields "<a href="("Drawing Link")" & "</a>""</td>" & _ ***MY HTML WONT CREATE THE HYPERLINK***
"</tr>"
答案 0 :(得分:1)
“访问超链接”字段将超链接存储为三部分值,以#字符分隔(查看http://allenbrowne.com/casu-09.html):
display text#filename#any reference within the file
嵌入HTML标记将需要提取中间部分。使用内在函数HyperlinkPart()进行计算就可以实现这一点。在查询或VBA中进行提取。
正确的字符串连接语法:
rowColor & "<a href='" & HyperlinkPart(rs![Drawing Link], acAddress) & "'>Click Here</a></td>" & _
如果“超链接”字段的“显示文本”部分中包含内容,则可以再次使用HyperlinkPart()函数从该字段中提取并进行连接,以代替单击此处。