我有一个ASPX页面生成的Excel文件,该页面在PROTECTED VIEW中打开。我希望编写一些Excel 2013 VBA来格式化Excel 97文件并保存。
Windows("DS – Incidents and Linked Problems.xls").Activate
Application.ActiveProtectedViewWindow.Edit
给出错误9下标超出范围。 理想情况下,我希望在文件打开时访问此文件,因为文件和浏览器版本已设置,并且很难更改。
编辑:为了帮助我看看我跑了怎么回事:
Debug.Print Workbooks.Count
For Each w In Workbooks
Debug.Print w.Name
Next
给
1 Book1.xlsm
然后我在第二个文件上使用Application.ActiveProtectedViewWindow.Edit
并运行返回的相同代码:
2 Book1.xlsm DS - 事件和链接的问题.xls
我刚刚找到ProtectedViewWindow Object (Excel)并使用发现的信息能够提出:
If Application.ProtectedViewWindows.Count > 0 Then
For pvwi = 1 To Application.ProtectedViewWindows.Count
If Application.ProtectedViewWindows(pvwi).SourceName = "DS – Incidents and Linked Problems.xls" Then
Application.ProtectedViewWindows(pvwi).Activate
End If
DoEvents
Next
End If
Application.ActiveProtectedViewWindow.Edit