我一直试图通过Excel 2010在VBA中创建一个快速子例程,以便通过bit.ly自动放置一个URL列表并将缩写链接复制回原来的链接。但是我得到了一个错误70:Permission Denied运行时错误。我有几门课程,并且这很有效,但我对VBA并不十分熟悉,如果可能的话,可以在调试时使用一些帮助(这会有很大的帮助)。下面的代码:VBA错误70:权限在IE自动化过程中被拒绝
Option Explicit
Dim IE As Object
Sub AutoAbbrev()
Set IE = CreateObject("InternetExplorer.Application")
Dim holdURL As String
Dim row_number As Integer
IE.Visible = True
For row_number = 101 To 112
holdURL = ""
If Range("b" & row_number).Value = "" Then GoTo Skip
IE.navigate "http://www.bitly.com" 'load bit.ly
Do While IE.readyState <> 4
DoEvents
Loop
IE.document.all("shorten_url").Value = Range("b" & row_number).Value
IE.document.all("shorten_btn").Click
Do While IE.document.all("shorten_url").Value = Range("b" & row_number).Value Or IE.document.all("shorten_url").Value = ""
DoEvents
Loop
holdURL = IE.document.all("shorten_url").Value
IE.document.all("shorten_url").Value = ""
Range("b" & row_number).Value = holdURL
Skip:
Next row_number
End Sub
Private Sub Command1_Click()
AutoAbbrev
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set IE = Nothing
If TypeName(IE) <> "Nothing" Then Unload IE
Set IE2 = Nothing
If TypeName(IE2) <> "Nothing" Then Unload IE2
End Sub
的错误主要是扔在这条线的项目已经通过一个或多个迭代运行后:
Do While IE.document.all("shorten_url").Value = Range("b" & row_number).Value Or IE.document.all("shorten_url").Value = ""
DoEvents
Loop
如果可以提供任何具体的建议,以帮助我在这个驼背,我将不胜感激。谢谢!
您可以给出Col B单元格值中的任何一个的示例,以便我们可以对其进行测试吗? –
可能是使用可以尝试这样的..虽然IE.document.getelementsbyid(“shorten_url”)没什么 “做更多的检查,这里 的DoEvents 结束而 –
B列中的任何值可以与任何网站链接被取代 - stackoverflow.com ,google.com等 – user2813578