VBA:将超链接复制到剪贴板

时间:2020-06-09 14:21:21

标签: excel vba

我想通过单击将超链接复制到剪贴板。

此刻,我正在尝试以下代码:

Dim clipboard As MSForms.DataObject
Set clipboard = New MSForms.DataObject
clipboard.SetText Selection.Hyperlinks(1).Address
clipboard.PutInClipboard

End Sub 

Microsoft Forms 2.0对象库已经激活:

enter image description here

但这不起作用,我的剪贴板继续为空。

我也尝试过此代码

Dim DataObj As MSForms.DataObject, LinkURL As String
LinkURL = ActiveCell.Hyperlinks(1).Address
Set DataObj = New MSForms.DataObject
With DataObj
    .SetText LinkURL
    .PutInClipboard
    .GetFromClipboard
    MsgBox .GetText
End With
End Sub 

但还是失败了,我不知道出什么问题了。

1 个答案:

答案 0 :(得分:1)

我是通过以下代码获得的:


Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

    Application.GoTo Reference:=Target.Range
    Call CopyHyperlinkToClipboard(Target)
End Sub


Sub CopyHyperlinkToClipboard(Target)

    Dim MyData As New DataObject

    Row = Target.Range.Row
    Column = Target.Range.Column
    Chtoc = Cells(Row, Column).Value
    MyData.SetText Chtoc
    MyData.PutInClipboard
End Sub

相关问题