我是这个网站的新手,但我已经找到了一些关于如何解决VBA问题的好建议。现在我来这里询问有关超链接问题的子帮助。 特别是,我的问题类似于本主题中描述的问题:
Excel VBA Get hyperlink address of specific cell
我有一个充满超链接的工作表,但我只需要提取" H"中的地址。专栏,从" H6"并将它们写入" N"列,从" N6"开始。
我记下了这段代码:
Sub EstraiIndirizzoPut()
Dim IndirizzoInternet As Hyperlink
Dim ISINs As String
i = 6
For Each IndirizzoInternet In Sheets("XXX").Range("H" & i).Hyperlinks
IndirizzoInternet.Range.Offset(0, 6).Value = IndirizzoInternet.Address
ISINs = Mid(IndirizzoInternet.Address, 78, 12)
Range("N" & i).Value = ISINs
i = i + 1
Next
End Sub
它仅适用于第一个" H6"细胞,但在"下一个"当它应该读到" H7"它取而代之的是" End Sub",终止例程,而不是" H7"单元格以及列中的许多其他单元格都填充了超链接(它给了我"没有"值)。 你能告诉我哪里弄错了吗?非常感谢。
答案 0 :(得分:0)
你的循环没有正确设置。请尝试这样:
For i = 6 to 100
Set IndirizzoInternet = Sheets("XXX").Range("H" & i).Hyperlinks
IndirizzoInternet.Range.Offset(0, 6).Value = IndirizzoInternet.Address
ISINs = Mid(IndirizzoInternet.Address, 78, 12)
Range("N" & i).Value = ISINs
Next
你怎么知道何时停止循环?它是预设的行数吗?如果不是,您将需要确定要处理的最后一行,并将100
替换为该变量。