【问题标题】:MS Access Email Table HyperlinkMS Access 电子邮件表超链接
【发布时间】:2020-08-30 05:01:10
【问题描述】:

我创建了一个表,我根据 MS Access 中的查询通过电子邮件发送该表,其中一个字段是指向我们服务器上文件的超链接。当模块运行并在 Outlook 中创建表时,超链接只是文件在服务器上的文本。我在 HTML 方面不是那么强,所以我很难调试为什么我不能让那个字段来创建超链接,而不仅仅是文件位置作为文本。我尝试在下面为“DRAWING LINK”在电子邮件表中创建一个超链接:

        "<tr>" & _
"<td bgcolor='#7EA7CC'>&nbsp;<b>Job Number</b></td>" & _
"<td bgcolor='#7EA7CC'>&nbsp;<b>Stock Number</b></td>" & _
"<td bgcolor='#7EA7CC'>&nbsp;<b>Material and Spec</b></td>" & _
"<td bgcolor='#7EA7CC'>&nbsp;<b>Order Size</b></td>" & _
"<td bgcolor='#7EA7CC'>&nbsp;<b>Days In Processing</b></td>" & _
"<td bgcolor='#7EA7CC'>&nbsp;<b>Drawing Link</b></td>" & _
"</tr>"

i = 0

Do While Not rs.EOF

If (i Mod 2 = 0) Then
rowColor = "<td bgcolor='#FFFFFF'>&nbsp;"
Else
rowColor = "<td bgcolor='#E1DFDF'>&nbsp;"
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>"

【问题讨论】:

  • 该字段是超链接类型还是只是带有 url 字符串的文本类型?
  • 该字段设置为超链接类型。
  • 我不使用超链接类型。我更喜欢 Text 字段,然后使用代码构建超链接。

标签: html vba ms-access


【解决方案1】:

Access 超链接字段将超链接存储为由 # 字符分隔的 3 部分值(查看 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() 函数从字段中提取并连接代替 单击此处

【讨论】:

  • 您上面的代码没有给我一个错误,我确实将超链接变成了文本,但是当电子邮件打开超链接应该是空白的绘图链接列时。 rowColor &amp; "&lt;a href='" &amp; HyperlinkPart(rs.Fields("strlink"), acAddress) &amp; "'&gt;&lt;/a&gt;&lt;/td&gt;" &amp; _
  • 我得到了下面的代码,将地址作为超链接放在电子邮件表中,这是一个开始,基于您的帮助。然而,它只是作为显示文本,地址并没有嵌入到链接中以将我带到相关文件。
  • "&lt;a href='" &amp; HyperlinkPart(rowColor &amp; rs![Drawing Link], acAddress) &amp; "'&gt;&lt;/a&gt;&lt;/td&gt;" &amp; _
  • 当然不能像这样嵌入 rowColor。需要在链接标签中包含一些显示文本或图像——点击可见。请参阅编辑后的答案。抱歉,之前忘记包含了。这对我有用。
  • 它肯定不会与 rowcolor。我更胖了。然而你的代码也对我有用!感谢您提供的所有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-03
相关资源
最近更新 更多