我试图更改打开的Outlook电子邮件中的超链接,以从路径中删除文件名。例如,我希望A:\ test \ folder1 \ file.txt成为A:\ test \ folder1
我们使用SharePoint Online存储文件,而且通常希望打开文件位置。修改链接可以实现这一点(我们将SharePoint映射为网络共享)。
此代码会更改整个超链接。我假设我需要在最后的反斜杠之后丢弃所有内容。
Sub HyperLinkChange()
Dim objDoc As Object
Dim tmpLink As Object
On Error Resume Next
If ActiveInspector.EditorType = olEditorWord Then
' use WordEditor Inspector
Set objDoc = ActiveInspector.WordEditor
For Each tmpLink In objDoc.Hyperlinks
tmpLink.Address = "test123"
Next tmpLink
End If
End Sub
答案 0 :(得分:1)
您可以使用InStrRev
从结尾开始搜索反斜杠,使用Left
函数截断字符串。有关详细信息,请参阅InStrRev documentation和Left documentation。
添加其他变量Dim pos as Long
后,找到pos = InStrRev(tmpLink.Address, "\", , vbTextCompare)
的最后一个反斜杠的位置。这是从地址文本的开头开始的位置,而不是结尾。在示例地址A:\test\folder1\file.txt
中,最后一个反斜杠的位置为16。
然后tmpLink.Address = Left(tmpLink.Address, pos - 1)
返回该反斜杠左侧的所有内容。