4

使用公式生成的 Excel 超链接似乎存在错误。我正在使用 Excel 2010。我有一个包含 URL 的单元格的电子表格,我的目标是做以下两件事:

  1. 将这些单元格变成超链接。
  2. 创建一个键盘快捷键来打开这些超链接,这样我就不必使用鼠标了。

要做#1,最初我只是使用了函数=HYPERLINK()。所以,我的 URL 在 columnA中,我使用这个公式在 column 中创建超链接B

Ctrl要执行 #2,我创建了以下宏,它应该使用键盘快捷键+打开超链接H

Sub Open_Hyperlink()
'
' Open_Hyperlink Macro
'
' Keyboard Shortcut: Ctrl+h
'
    Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
End Sub

问题是这个宏似乎只适用于不是使用公式创建的超链接。例如,如果我只是输入一个单元格http://www.google.com,Excel 会自动将其设为超链接,并且键盘快捷键宏可以工作,而它不适用于公式生成的超链接。

我还注意到,当我右键单击公式生成的超链接时,下拉菜单中没有打开超链接的选项,但右键单击不是由公式生成的超链接时有该选项。

我找到了以下解决方法。我没有使用公式生成超链接,而是使用了在这里找到的宏。

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

我可以使用键盘快捷键打开使用此宏生成的超链接。我想知道是否有人遇到过类似的问题,以及为什么公式生成的超链接对我不起作用。我将来更喜欢使用公式制作超链接,因为它更简单,所以如果有人知道避免使用宏制作超链接的方法,我将不胜感激。

4

1 回答 1

6

我想知道是否有人遇到过类似的问题,以及为什么公式生成的超链接对我不起作用。

唉,这似乎是一个痛苦的事实:Excel 没有添加到Hyperlinks集合公式生成的链接 - 下面是调试器中指向的屏幕=HYPERLINK("http://www.google.com/";"Google")

单元格超链接集合

我不确定这是故意实现还是错误,但是是的,可能无法使用Hyperlinks().Follow方法打开公式生成的链接。

但是,如果您要使用键盘快捷键打开链接,只需使用以下代码 - 它会自动转换为可点击链接选定的单元格文本并打开它:

Sub Open_Hyperlink()
    Selection.Hyperlinks.Add Anchor:=Selection, Address:=Selection.Formula
    Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
End Sub

只需分配任何快捷方式,您就可以开始了)这里是示例:https ://www.dropbox.com/s/d4cie7lun22quma/FollowLinks.xlsm

希望这会有所帮助。祝你好运!

于 2013-01-20T09:06:30.183 回答