Excel 2016.如何将超链接单元格制作成文本?

Excel 2016.如何将超链接单元格制作成文本?

我有一列文本,其中全是超链接。我想将文本和 URL 复制到单独的字段中。

例如单元格(A1)中有“Apple”(超链接到http://www.apple.com

我想把值放入 D 和 E

D1 将包含“Apple”

E1 将包含 URLhttp://www.apple.com

Function GetURL(HyperlinkCell As Range)
    GetURL = Replace(HyperlinkCell.Hyperlinks(1).Address, "file:", "")
End Function

我在 ThisWorkbook (VBA) 中尝试过这个,得到的结果如下#姓名?在我的电子表格中

答案1

您需要将您的功能放在标准模块

在此处输入图片描述

然后它就会起作用:

在此处输入图片描述

答案2

您必须将代码放在普通模块中:

  • 在 VBE 中右键单击您的项目
  • 插入:模块
  • (可选)给你的模块起一个更合理的名称

剪切/粘贴你的代码。然后它应该可以正常工作!

为了使您的意图更加清晰,您可以通过明确地将其声明为函数Public(并不是说它不会改变任何东西,但有些人认为它是隐式的Private)并将返回类型设置为来扩展函数头String

Public Function GetURL(HyperlinkCell As Range) as String

由于超链接属性仅包含字符串,因此在 UDF 中明确说明它没有任何问题。

相关内容