gpt4 book ai didi

excel - 运行大量 VBA 后出现打印预览问题

转载 作者:行者123 更新时间:2023-12-02 02:15:33 27 4
gpt4 key购买 nike

我有一个 Excel 工作簿,其中几乎所有内容都是自动化的。它打开其他工作簿,从中复制数据,关闭它们,然后多次循环数据以生成我们打印和使用的报告。几乎每次运行所有 VBA 然后尝试打印后,打印预览都会卡住,要么找不到打印机,要么加载页面尺寸,如图所示。关闭 Excel 并重新打开文档会将打印预览恢复为正常功能。 VBA 所做的唯一与打印相关的事情是更改打印区域。我在使用任何其他运行 VBA 的文档时都没有遇到过此问题。这只是一个错误还是可能是代码中的某些内容?

Issue

这是导致打印预览以某种方式无法加载的代码。如果我跳过这一部分,那么它会按预期工作...我希望以某种方式让此代码发挥作用,因为它仍然需要。

    Set wb1 = Workbooks.Open(FileName)
Set wb2 = ThisWorkbook

For i = LBound(sArray) To UBound(sArray) 'Loops through array, copies available data from last report
ShtName = sArray(i, 0)
On Error Resume Next
wb1.Sheets(ShtName).Activate
If Err.Number = 0 Then
wb1.Sheets(ShtName).Activate
Columns("A:U").Copy
wb2.Sheets(ShtName).Activate
Columns("BE:BV").Select
Selection.PasteSpecial xlPasteValues
Application.CutCopyMode = False
lastrow = Cells(Rows.Count, "BE").End(xlUp).Row
Range("BA2:BC2").Select
Selection.AutoFill Destination:=Range(Cells(2, "BA"), Cells(lastrow, "BC")), Type:=xlFillDefault
End If
On Error GoTo 0

DoEvents

Next i

wb1.Close False

Sheet2.Activate

我尝试注释掉“On Error Resume Next”、“On Error Goto 0”、“If...”、“End If”和“DoEvents”。删除这些内容并仅从上一张纸中进行复制和粘贴后,打印预览仍然失败。

最佳答案

看来删除 DoEvents 的所有实例已经解决了这个问题...

打印预览工作正常,退出工作簿时 Excel 不再崩溃。

关于excel - 运行大量 VBA 后出现打印预览问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37301701/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com