因此,在尝试打开新工作簿(checkwb)时,我遇到了一些奇怪的行为。当新工作簿打开时,它会打开一个"打印设置"工作簿中每个页面的对话框。此外,点击" OK" 〜200次代码运行正常,但如果我关闭checkwb并尝试再次运行代码,则无法打开checkwb,直到我完全关闭Excel并重新打开,此时再次出现打印对话框。这是我的(不完整)代码:
Sub Check()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim homewb As Workbook
Dim checkwb As Workbook
Dim ws As Worksheet
Dim namestr As String
Dim checkarray() As Double
Set homewb = Workbooks("BranchTable Calc B31.3.xlsm")
Set checkwb = Workbooks.Open("Z:\Agrium\Redwater\E130040CP ~ Pipe Spec
Update\M-Mech\20-Eng\Calcs\Final WT Calcs All Specs\New Bechtel Agrium
comments.xlsm")
For Each ws In homewb.Sheets
If ws.Name = "Cover" Or ws.Name = "Pipe Dims" Then
Else:
namestr = ws.Name & " Weld"
checkarray() = GetCheckValues(checkwb, namestr)
End If
Next
checkwb.Close
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
我已经读过这样的奇怪错误,这些错误可能来自损坏的文件,但如果我的理解损坏,代码就不能打开文件。
答案 0 :(得分:1)
将目标工作簿中所有工作表的页面视图设置为“正常”模式可解决此问题。感谢里卡多罗德里格斯的小费!