我想將模板工作表複製到其自身的左側以由報告生成器填充。這一切工作正常。沒有閃爍的複製工作表
但是,當涉及到表格複製行(如下所示)時,它們是一個閃光燈,因爲excel出現然後消失 - 儘管偶爾我會留下一個藍色的,部分填充的excel窗口。
我已將Application.ScreenUpdating
設置爲false,並且.Visible
也設置爲false,並且我每次都重置它們以儘量減少中斷。這閃光燈真的很煩人。無論如何阻止它?
' create new sheet from template sheet
shtDeliveryVariance.Copy Before:=shtDeliveryVariance
Set shtVariance = Sheets(shtDeliveryVariance.Index - 1)
shtVariance.Name = "Delivery Variance " & Format(nSheetNumber, "000")
' minimise the flashes
Application.Interactive = False
Application.ScreenUpdating = False
Application.Visible = False
更新:如果我使用Set shtVariance = Sheets.Add
我不明白的閃光燈,但我失去了所有漂亮的格式。
我說:我已經設置ScreenUpdating爲false。我再次設置它以去除剩下的醜陋藍色窗口,但我仍然有那樣的閃爍。 – 2009-09-08 15:45:50
好吧我誤解了:) 對不起,使用上面的代碼時無法重現行爲(無屏幕閃爍)。據推測該模板非常重要,複製操作需要很長時間? 我通常不會打擾application.visible或application.interactive,application.screenupdating通常就足夠了。您是否因特定原因使用這些設備? 如果您爲這個問題提供更多的上下文和代碼,可能會有所幫助。 – andyb 2009-09-08 17:36:17
以下是一些背景:我們爲公司內部和外部的各種團體創建報告。這些報告是Excel的xlt文件,它們有vb代碼模塊。這些報告在某些情況下超過了65K行的限制,因爲excel <= 2K3,所以我們現在正在拆分表單來補償。 '模板頁面'只是一張表格,其中包含美化(徽標,文本位,全部位於前7行)。圍繞該部分的代碼在跑到數據庫之前填充一些文本,以開始吸取數據以填充報告。 – 2009-09-09 08:05:29