我在使用application.displayalerts = false的excel VBA中遇到問題。VBA DisplayAlert未設置爲false
當我在程序中發送此命令行時,displayalerts屬性不會更改爲false,它仍然爲true。當我在即時窗口中執行它時,它變成了錯誤。我找不到與此相關的任何內容。
我已經檢查過EnableEvent屬性,因爲我在另一個主題上找到它,它已啓用。
我不確定我應該發佈我的代碼的哪一部分,因爲我在我想要的地方,我的代碼中間以及作爲第一行代碼嘗試了此命令。此外,這是運行在其他模塊的Excel文件,其中一些具有公共功能(這不應該影響任何東西),有些具有我粘貼下面的公共變量。除此之外,這是一個完整獨立的代碼,真的不上其他的人
Public pctCompl As Integer
Public statCol As Collection
Public session As NotesSession
Public db As NotesDatabase
Public lmt As Integer
的代碼我使用了顯示警報
Application.DisplayAlerts = false
讓我知道還有什麼信息你球員需要或編碼
編輯: 這裏是代碼。在執行該行後,displayalerts屬性仍然設置爲true,因此不會在代碼的其他部分將其設置爲true,該行不會更改屬性,這非常奇怪,因爲它確實會更改它當我執行它的直接窗口
Sub Main()
Dim Mwksh As Worksheet
Dim Metwksh As Worksheet
Dim Swksh As Worksheet
Application.DisplayAlerts = False ''''''Dont work
'Set the worbooks
Set Mwksh = ThisWorkbook.Sheets(MASTER_SHT)
Set Swksh = ThisWorkbook.Sheets(SUPPORT_SHT)
'Open the Metrics workbook
Set Metwksh = OpenFile
'Find the Master File last column and row
clLast = LastCol(Mwksh, MASTER_HEADER_ROW)
rwLast = LastRow(Mwksh)
'Copy the content from the master file to the support sheet so it can be fixed before being copied to the metrics file
Swksh.UsedRange.ClearContents
Mwksh.Range(MASTER_FIRST_COL & MASTER_HEADER_ROW & ":" & clLast & rwLast).Offset(1, 0).Copy Destination:=Swksh.Range("A1")
DeleteColumns Swksh
InsertColumns Swksh
ClearDataSheet Metwksh
CopyToData Swksh, Metwksh
Metwksh.Parent.RefreshAll
Metwksh.Parent.Close savechanges:=True
MsgBox "Metrics file updated!"
End Sub
它是'DisplayAlerts'而不是'DisplayAlert',它會在代碼結束時重置。 – Rory
S是我的帖子上的一個錯字,我在代碼中將它寫爲Application.DisplayAlerts。對不起)=) – Tocchetto
然後你應該發佈實際使用'Displayalerts'的代碼,並指出你如何測試它實際上沒有被正確設置。 – Rory