Я сделал .xlam файл, который содержит некоторые макросы. Я использую эти макросы в качестве кнопки на моей ленте. Большинство из этих макросов открывают другие листы Excel. Но всякий раз, когда я использую этот макрос, лента блокирует, я не могу использовать какие-либо вкладки или кнопки на этих вкладках.
Кто-нибудь знает, почему это происходит? Это пример кода, который я добавил как макрос на ленте.
Sub OpenBureauplanning()
Application.ScreenUpdating = False
Dim Path As String
Path = "J:\Planning\Bureauplanning\"
Dim openfile As String
openfile = Path & "Bureauplanning.xlsm"
Workbooks.Open (openfile)
Application.ScreenUpdating = True
End Sub
После ответов от Дая. Я удалил часть «application.screenupdating», затем она работает нормально.
В другом коде я использую форму, чтобы определить, какой файл нужно открыть. Я также использую этот код на своей ленте.
Этот код такой:
Sub OpenProjectplanning()
Open_projectplanning.Show
End Sub
При запуске этого кода эти формы открываются. В этой форме люди заполняют номер проекта из файла, который нужно открыть.
При нажатии кнопки «открыть» запускается следующий код:
Private Sub CommandButton1_Click()
Dim Path As String
Path = "J:\Planning\Projecten\"
Dim File As String
File = TextBox1.Text
Dim openfile As String
openfile = Path & File & ".xlsm"
Workbooks.Open (openfile)
Unload Me
End Sub
При открытии файла проекта это код автоматически запускается при открытии:
Private Sub Workbook_Open()
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
Application.DisplayStatusBar = True
ThisWorkbook.Worksheets("Planning").Activate
End Sub
После запуска этих кодов лента блокируется.