使动态超链接功能静态

时间:2016-07-22 11:25:13

标签: excel vba

我在A列中有一列值,所有值都是6位数字。为了将每个这些文件夹链接到包含具有相同6位数标题的PDF文件的文件夹,我将以下函数插入到单元格A2中:

=HYPERLINK("C:\...Project\" & A2 & ".pdf", A2)

这非常有效,并且通过千个左右的单元格向下拖动为每个条目创建了超链接。

但是,现在我想用这些新的超链接替换列A1。我以为我可以粘贴特殊的超链接列来删除每个单元格中的动态条目,但这似乎不可能。我确信这是一个更简单的解决方案。我错过了什么吗?在更换之前,我可以使B列独立于A列吗?有VBA解决方案吗?

2 个答案:

答案 0 :(得分:3)

您可以在vba程序中快速运行:

Sub CreateHyperlinks()
Dim cl As Range

For Each cl In Range("B1:B100").Cells '## Modify as needed
    cl.Hyperlinks.Add cl, cl.Value, , , cl.Offset(0,-1).Value
Next

End Sub

答案 1 :(得分:1)

如果没有人想要在没有VBA的情况下这样做,你可以替换为例如

=HYPERLINK(1,2)

<html><a href=1>2

但是在动态公式的情况下,它太复杂了,因为

=HYPERLINK("C:\...Project\" & A2 & ".pdf", A2)

将是

="<html><a href=""C:\...Project\" & A2 & ".pdf"">" & A2

然后必须将其复制为文本(例如将值粘贴到记事本中并在记事本中再次复制它们),然后再粘贴到Excel中。