Недавно я научился программировать в VBA и получил некоторую чрезвычайно полезную помощь, прочитав ранее заданные вопросы и ответы на этом сайте. Тем не менее, я столкнулся с проблемой в одной из моих программ, которая, как представляется, не рассматривается очень напрямую. Поэтому я попрошу об этом здесь.Получение «Невозможно выполнить макрос ...» Ошибка в VBA
Я создаю макрос Powerpoint, который автоматически обновит некоторые слайды новыми данными. Для одного слайда, содержащего таблицу excel, я хочу, чтобы макрос открыл файл excel, запустил существующий макрос в файле excel, чтобы заполнить электронную таблицу новыми данными и, наконец, скопировать таблицу на слайд PowerPoint. Мой код до сих пор (без копии по части) заключается в следующем:
Private Sub GetProposals()
Dim myXL As Excel.Application
Dim myXLS As Excel.Workbook
Dim ws As Excel.Worksheet
Set myXL = New Excel.Application
Set myXLS = GetObject("K:\Jackson\Proposal Summary Master.xlsm")
Set ws = myXLS.Sheets(1)
ws.Visible = xlSheetVeryHidden
myXLS.Sheets("VLOOKUP").Range("J1").Value = "EPL"
myXL.Run ("'K:\Jackson\Proposal Summary Master.xlsm'!BABox_Change")
End Sub
Он работает правильно, пока не достигнет «myXL.Run ...» линии. Я получаю сообщение с сообщением «Ошибка времени выполнения 1004»: не удается запустить макрос «K: \ Jackson \ Proposal Summary Master.xlsm»! BABox_Change '. Макрос может быть недоступен в этой книге или все макросы могут быть отключены. »
Макрос excel отлично работает, когда я открываю файл напрямую и запускаю его таким образом. Я немного зациклен на том, что я должен делать дальше. Есть ли у кого-нибудь какие-то предложения?
Это может быть очень сложно при вызове макросов в другой файл в другом приложении. Вы должны заставить Excel открыть этот файл, прежде чем пытаться вызвать этот макрос. И удалите путь к папке в аргументе .Run. Зависит от того, как написан макрос в Master.xlsm, он ничего не может произвести. – PatricK