Answers:
如果您不想创建一个宏,并且只要您不介意其他列,那么只需在URL列旁边创建一个新列即可。
在公式的新列中键入=HYPERLINK(A1)
(将A1替换为您感兴趣的任何单元格)。然后将公式向下复制到其余200个条目中。
注意:如果单元格A1包含一个长度超过255个字符的字符串,此解决方案将不起作用。导致#VALUE!
错误
创建宏,如下所示:
在Microsoft Excel的“工具”菜单上,指向“宏”,然后单击“ Visual Basic编辑器”。在插入菜单上,单击模块。将此代码复制并粘贴到模块的代码窗口中。它将自动将自身命名为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
http://
以此开头的URL,则需要添加(使用上述更改,但替换mailto:
为http://
。否则,超链接将不起作用。)
这是我找到的方法。我在使用Excel 2011的Mac上。如果B列具有您要作为超链接的文本值,请将此公式放在单元格C1中(或D1或任意列,只要它是自由列):=HYPERLINK(B1,B1)
这将插入带有位置作为链接文本,“友好名称”作为链接文本。如果您在另一列中为每个链接使用一个友好名称,则也可以使用该名称。然后,如果您不想看到文本列,则可以隐藏它。
如果您具有某件商品的ID列表,且网址均为all 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)
并且不需要网址列表。那是我的情况,工作得很好。
根据这篇文章:http : //excelhints.com/2007/06/12/hyperlink-formula-in-excel/此方法也将在Excel 2007中起作用。
好的,这是一个骗人的解决方案,但我只是想不通如何让Excel将URL列评估为大量超链接。
="=hyperlink(""" & A1 & """)"
=
为=
(以某种方式强制重新评估单元格)。仅超链接样式不会转换为可单击的链接,并且“插入超链接”对话框似乎无法将文本用作大量单元格的地址。除此之外,F2并Enter通过所有细胞会做到这一点,但这是很多细胞的繁琐。
很短的清单很简单的方法:
你有你的链接;)
如果不能在超链接中添加额外的列,则可以选择使用外部编辑器将超链接包含在=hyperlink("
和中")
,以获取=hyperlink("originalCellContent")
如果您具有Notepad ++,则可以使用以下食谱半自动执行此操作:
=hyperlink("
。这将添加=hyperlink("
到每个条目的开头。$
(行尾)"\)
。这会\
在每行的末尾添加一个封闭的引号和一个封闭的括号(激活正则表达式时必须将其转义)。=hyperlink("__linecontentgoeshere__")
...,以便那些可能被记事本++误导的人
="=HYPERLINK("""&A1&""")"
(假设URL在A1中)。然后将结果复制到记事本,然后再返回到Excel(可能会有更好的方法)。现在,您可以使用超链接了-您可以将“样式”面板中的超链接样式应用于它们,以得到带蓝色下划线的外观。如果您在B列中有链接标签,则可以使用以下公式:="=HYPERLINK("""&A1&""";"""&B1&""")"
。
使用Windows上的Excel 2007,我发现这些步骤最简单。
我很震惊Excel无法自动执行此操作,因此这是我的解决方案,希望对其他人有用,
data:text/html,<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>
代替第二步,您可以使用下面的页面,首先,单击“运行代码段”,然后将其粘贴到该列上
<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>
我发现,如果超链接链接到本地位置时不包含http://,则这里的方法均无效。
我还想对脚本进行防呆,因为用户将无法自己维护它,因此我将无法使用。
如果它们包含一个点且没有空格,则它将仅在选定范围内的单元格上运行。它最多只能运行10,000个单元。
Sub HyperAdd()
Dim CellsWithSpaces As String
'Converts each text hyperlink selected into a working hyperlink
Application.ScreenUpdating = False
Dim NotPresent As Integer
NotPresent = 0
For Each xCell In Selection
xCell.Formula = Trim(xCell.Formula)
If xCell.Formula = "" Or InStr(xCell.Formula, ".") = NotPresent Then
'Do nothing if the cell is blank or contains no dots
Else
If InStr(xCell.Formula, " ") <> 0 Then
CellsWithSpaces = CellsWithSpaces & ", " & Replace(xCell.Address, "$", "")
GoTo Nextxcell
End If
If InStr(xCell.Formula, "http") <> 0 Then
Hyperstring = Trim(xCell.Formula)
Else
Hyperstring = "http://" & Trim(xCell.Formula)
End If
ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=Hyperstring
End If
i = i + 1
If i = 10000 Then Exit Sub
Nextxcell:
Next xCell
If Not CellsWithSpaces = "" Then
MsgBox ("Please remove spaces from the following cells:" & CellsWithSpaces)
End If
Application.ScreenUpdating = True
End Sub
您可以将公式插入=HYPERLINK(<your_cell>,<your_cell>)
到相邻的单元格中,并将其一直拖动到底部。这将为您提供所有链接的列。现在,您可以通过单击标题,右键单击并选择来选择原始列Hide
。
将URL放入HTML表中,将HTML页面加载到浏览器中,复制该页面的内容,粘贴到Excel中。此时,URL被保留为活动链接。
在http://answers.microsoft.com/zh-CN/mac/forum/macoffice2008-macexcel/how-to-copy-and-paste-to-mac-excel-2008-a-list-of/上提出了解决方案(Jim Gordon Mac MVP)制作的c5fa2890-acf5-461d-adb5-32480855e11e [ http://answers.microsoft.com/en-us/profile/75a2b744-a259-49bb-8eb1-7db61dae9e78]
我发现它有效。
我有以下网址:
https://twitter.com/keeseter/status/578350771235872768/photo/1 https://instagram.com/p/ys5ASPCDEV/ https://igcdn-photos-ga.akamaihd.net/hphotos-ak-xfa1/t51 .2885-15 / 10881854_329617847240910_1814142151_n.jpg https://twitter.com/ranadotson/status/539485028712189952/photo/1 https://instagram.com/p/0OgdvyxMhW/ https://instagram.com/p/1nynTiiLSb/
我将它们放入这样的HTML文件(links.html)中:
<table>
<tr><td><a href="https://twitter.com/keeseter/status/578350771235872768/photo/1">https://twitter.com/keeseter/status/578350771235872768/photo/1</a></td></tr>
<tr><td><a href="https://instagram.com/p/ys5ASPCDEV/">https://instagram.com/p/ys5ASPCDEV/</a></td></tr>
<tr><td><a href="https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg">https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg</a></td></tr>
<tr><td><a href="https://twitter.com/ranadotson/status/539485028712189952/photo/1">https://twitter.com/ranadotson/status/539485028712189952/photo/1</a></td></tr>
<tr><td><a href="https://instagram.com/p/0OgdvyxMhW/">https://instagram.com/p/0OgdvyxMhW/</a></td></tr>
</table>
然后,将links.html加载到浏览器中,进行复制,粘贴到Excel中,并且链接处于活动状态。
谢谢仙后座的代码。我更改了他的代码以使用本地地址,并且对他的条件几乎没有改变。我删除了以下条件:
http:/
为file:///
Sub HyperAddForLocalLinks()
Dim CellsWithSpaces As String
'Converts each text hyperlink selected into a working hyperlink
Application.ScreenUpdating = False
Dim NotPresent As Integer
NotPresent = 0
For Each xCell In Selection
xCell.Formula = Trim(xCell.Formula)
If InStr(xCell.Formula, "file:///") <> 0 Then
Hyperstring = Trim(xCell.Formula)
Else
Hyperstring = "file:///" & Trim(xCell.Formula)
End If
ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=Hyperstring
i = i + 1
If i = 100000 Then Exit Sub
Nextxcell:
Next xCell
Application.ScreenUpdating = True
End Sub
NotPresent
?
我有一个输入到url的数字列表,我想对其进行热链接。例如,我在A列中输入了问题编号(即2595692、135171),并且我想将这些问题编号转换为热链接并仅显示问题编号。
因此,我建立了一个指向列A的纯文本超链接,并将其复制为我所有的问题编号:
=“ = HYPERLINK(”&“”“ http”“&”“:”“”&“”&“&”&“”“ // stackoverflow.com/questions/"&A1&"""""&","&A1& “)”
然后我复制-将文本超链接的此值粘贴到另一列。
您最终得到一列类似于以下内容的文本:
= HYPERLINK(“ http”&“:”&“ // stackoverflow.com/questions/2595692",2595692)
然后,我选择了这些粘贴的项目并运行下面的F2Entry宏:
Sub F2Enter()
Dim cell As Range
Application.Calculation = xlCalculationManual
For Each cell In Selection
cell.Activate
cell = Trim(cell)
Next cell
Application.Calculation = xlCalculationAutomatic
EndSub
然后,我删除了文本输入列和列A。
我最后得到一列热链接的问题编号:
2595692
135171
等等
干杯
Excel 2010中最简单的方法:选择带有URL文本的列,然后从“主页”选项卡中选择“超链接样式”。列中的所有URL现在都是超链接。
此外,双击URL文本末尾的每个单元格,并添加一个空格或仅输入一个,也会产生超链接。类似于您必须在MS Outlook电子邮件中创建URL链接的方式。