如何使用VBA通过Internet Explorer从共享点打开Excel文档
我是VBA新手&边走边学。我现在遇到了一个问题,我需要一些帮助 我正在尝试使用Internet Explorer从共享点打开Excel工作簿(如何使用VBA通过Internet Explorer从共享点打开Excel文档,excel,vba,Excel,Vba,我是VBA新手&边走边学。我现在遇到了一个问题,我需要一些帮助 我正在尝试使用Internet Explorer从共享点打开Excel工作簿(Test.xlsx)。打开文件后,我想关闭IE。然后从工作簿复制几张工作表,将其复制/移动到新工作簿并关闭原始工作簿。 我在Google上搜索了很多东西,得到了下面的代码,如果我单独运行,这些代码可以正常工作,但是如果我与我的原始程序(我通过录制宏来生成)结合,它会给出一条错误消息“运行时错误'9':下标超出范围”,当我调试时会突出显示我的错误处理程序代码
Test.xlsx
)。打开文件后,我想关闭IE。然后从工作簿复制几张工作表,将其复制/移动到新工作簿并关闭原始工作簿。
我在Google上搜索了很多东西,得到了下面的代码,如果我单独运行,这些代码可以正常工作,但是如果我与我的原始程序(我通过录制宏来生成)结合,它会给出一条错误消息“运行时错误'9':下标超出范围”,当我调试时会突出显示我的错误处理程序代码(工作簿(“Test.xlsx”).Close SaveChanges:=False)
我真的无法理解这里的错误。
有人能帮我查一下正确的密码吗
基本上,我的要求是使用Internet Explorer(在新窗口中)从共享点(“URL/TEST.xlsx”
)打开Excel工作簿,关闭IE窗口,然后将一些工作表从原始工作簿(TEST.xlsx)复制/移动到新工作簿,关闭原始工作簿(TEST.xlsx)并在新工作簿(Book###中进行修改
有人能帮我查一下这里的密码吗
下面是我从谷歌/互联网上获得的代码
Sub OpenIE()
Dim objIE As Object
Set objIE = CreateObject("InternetExplorer.Application")
objIE.Navigate "URL/TEST.xlsx"
objIE.Visible = True**
On Error GoTo My_Error_Handler
Windows("Test.xlsx").Visible = True
On Error GoTo My_Error_Handler
Sheets(Array("Stats", "Mtx")).Select
Sheets("Mtx").Activate
Sheets(Array("Stats", "Mtx")).Copy
Sheets("Mtx").Select
'
'
'
'
' so on
'
'
My_Error_Handler:
Workbooks("Test.xlsx").Close SaveChanges:=False
ActiveWorkbook.Close SaveChanges:=False
MsgBox "Error: (" & Err.Number & ") " & Err.Description, vbCritical
End Sub
谢谢
或者如果你想自动签出它
Sub SP()
fil = "http://123/Testing/Test.xlsx"
If Application.Workbooks.CanCheckOut(fil) Then
Application.Workbooks.CheckOut fil
Set wb = Application.Workbooks.Open(fil)
End If
End Sub
为什么不直接在excel中打开文件而不是使用IE?例如,
工作簿。打开(“http://server.company.com/path/Test.xlsx)谢谢蒂姆。试图直接使用下面的代码打开文件,该代码带有运行时错误;将strFilePath设置为String strFilePath=“URL/TEST.XLSX”thishworkbook.FollowHyperlink(strFilePath),所以我想我会尝试使用IE,这可能会更好。正如我前面所说的,我对这个世界还不熟悉&试图从专家那里学到尽可能多的东西。Excel直接从URL打开文件应该没有问题
Sub SP()
fil = "http://123/Testing/Test.xlsx"
If Application.Workbooks.CanCheckOut(fil) Then
Application.Workbooks.CheckOut fil
Set wb = Application.Workbooks.Open(fil)
End If
End Sub