Мне нужно отобразить вкладку листа для открытого файла xlsx, поэтому для этого я использую файл VBS, чтобы открыть файл xlsm и активировать макрос (расположенный в модуле).когда я запускаю макрос вручную, он работает.Когда он активируется через VBS, он может видеть только файл xlsm, который содержит макрос и никаких других открытых Excel в данный момент.
Есть идеи?THX
код VBS:
Set objExcel = CreateObject("Excel.Application")
Set book = objExcel.Workbooks.Open("C:\Users\23892\Desktop\restore_ribbon.xlsm")
objExcel.Application.Run "'C:\Users\23892\Desktop\restore_ribbon.xlsm'!Module1.Restore_Ribbons"
objExcel.DisplayAlerts = False
objExcel.Application.Quit
Set objExcel = Nothing
код макроса:
Sub Restore_Ribbons()
Dim wb As Workbook
Dim str As String
For Each wb In Application.Workbooks
MsgBox wb.Name 'checking if name extracted correctly
wb.Activate
Application.ScreenUpdating = False
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"
ActiveWindow.DisplayWorkbookTabs = True
wb.Application.ScreenUpdating = True
Next Workbook
MsgBox ("End")
End Sub