繁体   English   中英

VBA运行时错误9:下标超出范围

[英]VBA run-time Error 9: subscript out of range

我正在运行一个vba来从一列超链接文本中提取url:

Sub RemoveHyperlinks()
Dim Cell As Range

Dim i As Long
Dim k As Long
k = 1
Set Cell = Workbooks("Company_List.xlms").Sheets("Sheet1").UsedRange

i = 0

Do Until i = Cell.Hyperlinks.Count
If Cell.Hyperlinks.Count > 0 Then
Workbooks("Company_List.xlms").Sheets("Sheet1").Cells(k, 1).Value = Cell.Hyperlinks.Item(1).Address
i = i + 1
k = k + 1
End If

Loop

End Sub

并且运行时错误9发生在以下行:

设置Cell = Workbooks(“Company_List.xlms”)。表格(“Sheet1”)。UsedRange

有人能帮忙吗? 工作簿名称和工作表名称是正确的,我的列数据从A1开始,标题标题为列。

编辑(2017年4月2日):这段代码有另一个错误,因为它生成了一个列表,似乎是列表中的第一个。 整个列表看起来都一样,但点击每个列表会带我到正确的超链接。 我希望列表中包含所有正确的相应网址,我应该如何编辑此代码?

编辑:我发现错误,它应该是工作簿(“Company_List.xlms”)。表格(“Sheet1”)。单元格(k,1).Value = Cell.Hyperlinks.Item( k ).Address

如果Workbooks("Company_List.xlms").Sheets("Sheet1").UsedRange返回subscript out of range则工作簿中没有名为“Company_List.xlms”的Workbooks或者没有名为“Sheet1”的工作表工作簿。

我怀疑第一个,因为这个名字很奇怪,应该是“Company_List.xlsm”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM