我在Excel中有一列,其中包含所有网站URL的值。我的问题是,我想将这些URL值转换为活动链接。该列中有大约200个条目,所有单元格中的URL都不同。是否有一种方法可以在不编写宏的情况下为所有单元格创建活动超链接。
我在Excel中有一列,其中包含所有网站URL的值。我的问题是,我想将这些URL值转换为活动链接。该列中有大约200个条目,所有单元格中的URL都不同。是否有一种方法可以在不编写宏的情况下为所有单元格创建活动超链接。
如果您不想创建宏,并且只要没有额外的列,那么就在URL列旁边创建新列。
在新列中输入公式=HYPERLINK(A1)
(将A1替换为您感兴趣的任何单元格)。然后复制该公式到其余200个条目。
注意: 如果单元格A1包含超过255个字符的字符串,则此解决方案无法正常工作。 它会导致#VALUE!
错误。
按照以下步骤创建宏:
在Microsoft Excel的“工具”菜单中,将鼠标指向“宏”,然后单击“Visual Basic Editor”。 在“插入”菜单中,单击“模块”。 将此代码复制并粘贴到模块的代码窗口中。 它将自动命名为HyperAdd。
Sub HyperAdd()
'Converts each text hyperlink selected into a working hyperlink
For Each xCell In Selection
ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=xCell.Formula
Next xCell
End Sub
当您完成粘贴宏后,请单击“文件”菜单上的“关闭并返回到Microsoft Excel”。
然后选择所需的单元格,单击宏,再单击运行。
注意:不要选择整个列!仅选择您希望更改为可点击链接的单元格,否则您将陷入无休止的循环并不得不重启Excel!完成!
Address:=xCell.Formula
更改为 Address:="mailto:" & xCell.Formula
。 - Danny Becketthttp://
开头的 URL,需要添加该前缀(使用上述更改,但将 mailto:
替换为 http://
)。否则,超链接将无法正常工作。 - Danny Beckett对于相当短的列表,有一个很简单的方法:
您现在已经获得了您的链接;)
我发现了一种方法。我使用的是Mac并且使用Excel 2011。
如果B列包含你想要变成超链接的文本值,将以下公式放入C1单元格(或D1或任何空闲列中):=HYPERLINK(B1,B1)
这将插入一个以位置作为链接文本和“友好名称”作为链接文本的超链接。如果你有另一列每个链接的友好名称,也可以使用它。
然后,如果你不想看到它,可以隐藏文本列。
如果你有某些东西的ID列表,并且所有的URL都是http://website.com/folder/ID
,例如:
A1 | B1
101 | http://website.com/folder/101
102 | http://website.com/folder/102
103 | http://website.com/folder/103
104 | http://website.com/folder/104
你可以使用类似于=HYPERLINK("http://website.com/folder/"&A1,A1)
这样的方法,不需要列举URL。这正是我的情况,并且效果很好。
根据这篇文章:http://excelhints.com/2007/06/12/hyperlink-formula-in-excel/,这种方法也适用于Excel 2007。
=IF(NOT(ISBLANK(A2)),HYPERLINK("https://jirasite.atlassian.net/browse/PROJECT-"&A2,"PROJECT-"&A2),"")
- undefined好的,这里有一个不太正式的解决方案,但我就是想不出如何让Excel批量将URL列评估为超链接。
="=超链接(""" & A1 & """)"
=
为 =
(某种方式强制重新评估单元格)。
仅使用超链接样式无法转换为可单击的链接,而“插入超链接”对话框似乎无法将文本用作大量单元格的地址。除此之外,F2和Enter 可以完成所有单元格的操作,但是对于大量单元格来说这很繁琐。
如果无法通过添加带有超链接的额外列来完成,另一种方法是使用外部编辑器将您的超链接括起来为=hyperlink("
和")
,以获得=hyperlink("originalCellContent")
如果您有Notepad++,可以使用以下步骤半自动地执行此操作:
=hyperlink("
。这会在每个条目的开头添加=hyperlink("
。$
(行末)替换为"\)
。这会在每行末尾添加一个闭合引号和一个闭合括号(当激活正则表达式时需要用\
转义)。=hyperlink("__linecontentgoeshere__")
将每行包装起来...对于那些可能会被提到notepad++所误导的人们。 - dreftymac="=HYPERLINK("""&A1&""")"
的公式(假设URL在A1中)来组合公式。然后将结果复制到记事本中,再回到Excel中(可能有更好的方法)。现在你有了可工作的超链接 - 你可以从样式面板中应用超链接样式,以获得蓝色下划线的外观。如果你在B列中有链接标签,你可以使用这个公式:="=HYPERLINK("""&A1&""";"""&B1&""")"
。 - Jonáš JančaříkInstead the first step, you can use the below page, first, click on "Run code snippet" then paste the column on it
<button onclick="document.write(document.body.querySelector('textarea').value.split('\n').map(x => '<a href=\'' + x + '\'>' + x + '</a>').join('<br>'))">Linkify</button><br><textarea></textarea>
data:text/html,<button onclick="document.write(document.body.querySelector('textarea').value.split('\n').map(x => '<a href=\'mailto:' + x + '\'>' + x + '</a>').join('<br>'))">Linkify</button><br><textarea></textarea>
- Max Makhrov<button onclick="document.write(document.body.querySelector('textarea').value.split('\n').map(x => '<a href=\'' + x + '\'>' + x.split('/').at(-1) + '</a>').join('<br>'))">Linkify</button><br><textarea></textarea>
- Shivam Sharma对于我来说,使用超链接功能可以实现以下方法:
=HYPERLINK("http://"&B10,B10)
B10
是包含URL文本版本的单元格(在此示例中)。
对于 Windows 上的 Excel 2007,我发现以下步骤最简单: