Excel:将带有超链接的列转换为只显示链接的列
在Excel中,我有一列链接,显示的是文本而不是实际的链接。
我其实是需要链接的,有没有办法把整列的链接批量转换,让链接暴露出来?否则我将不得不点击每个链接,在浏览器中打开它,然后复制并粘贴地址……
另外,我是在Excel 2008 for Mac中,所以貌似不能做宏…
在Excel中,我有一列链接,显示的是文本而不是实际的链接。
我其实是需要链接的,有没有办法把整列的链接批量转换,让链接暴露出来?否则我将不得不点击每个链接,在浏览器中打开它,然后复制并粘贴地址……
另外,我是在Excel 2008 for Mac中,所以貌似不能做宏…
简答:,没有VBA你无法自动完成。
这是在Windows 7电脑上,只需将快捷键替换为相应的Mac对应的快捷键。
1.用超链接高亮一个单元格。 2. 按CTRL+K键。这将打开超链接对话框(见下图)。一旦它打开,你会发现你的光标已经在地址字段了。 3. 按CTRL+A突出整个URL。 4. 按CTRL+C复制它。 5. 按ESC或Enter关闭超链接对话框。 6. 通过CTRL+V将URL粘贴到某个地方。
Public Function GetURL(c As Range) As String
On Error Resume Next
GetURL = c.Hyperlinks(1).Address
End Function
这里有一个VBA的解决方案,供会使用它的人使用。
用以下代码创建一个VBA模块。
=GetURL(A1)
使用时,在任意单元格中输入以下内容:
其中A1包含一个超链接。
工作中的功能。
0x1&
这可能听起来像个蛮力法,但这是我想到的最好的方法。(一个小时前,当我自己也有同样的问题时,我发现了这个页面……你可以花上一整天的时间去寻找,但有时做起来会更容易。)
1) 复制并粘贴包含超链接的单元格到一个新的电子表格中。
2)导出电子表格,点击 “更改文件类型",选择 "另存为其他文件类型",并将其保存为网页(也就是HTML文件)。
3)在浏览器中打开网页,查看源文件。
4) 复制并粘贴源文件到文本编辑器中。
5) 使用文本编辑器的查找/替换功能,删除每个超链接的前导和尾部文字。(换句话说,用”“代替上述文本。)注意,每个超链接的文本应该是相同的。
6) 现在你应该有一个除了超链接之外什么都没有的文本文件。根据需要复制并粘贴回原始电子表格中,或者按照您的意愿使用。
编辑说明,实际上你可以导出到一个单独的HTM文件。把文件关闭出来,再在Excel中重新打开,就可以解决问题了。=Hyperlink公式不见了,链接转换成了普通链接。这个方法为我节省了几个小时的时间,而且非常简单,我不用处理脚本或公式或VBA或Macros。
在提出这个问题后的几年里,Excel增加了=GetURL(cell)
函数,所以你可以在不丢弃自己的VBA的情况下完成这个任务。