Открытие файла Excel с помощью PowerPoint VBA, несогласованные результаты - PullRequest
0 голосов
/ 14 июля 2020

У меня есть макрос PowerPoint, который должен открывать файл Excel.

Public Sub SortList()

Dim MyFile as String
Dim xlApp as Object
Dim xlWorkBook as Object
Set xlApp = CreateObject("Excel.Application")

With Application.FileDialog(msoFileDialogOpen)
    .AllowMultiSelect = False
    .Show
    MyFile = SelectedItems(1)
End With

xlApp.Visible = True
xlApp.Workbooks.Open MyFile
Set xlWorkBook = xlApp.Workbooks.Open(MyFile)

Этот код ранее работал без ошибок. Однако я начал получать сообщение об ошибке

«Ошибка выполнения '-2147467259 (80004005)»: сбой метода «Открыть» объекта «Рабочие книги».

Ошибка возникает при попытке запустить строку кода «Установить».

Проблема в том, что я вижу, что код успешно открывает файл Excel! Вещи, которые я пробовал (примерно во всех возможных комбинациях):

-Изменение кода на это (я подумал, может быть, программа пыталась открыть файл дважды):

xlApp.Visible = True
Set xlWorkBook = xlApp.Workbooks.Open(MyFile)

-Добавление ReadOnly: = True для обеих команд или для любой из них .Open, в какой-то момент это дало мне сообщение «Ошибка автоматизации - неопределенная ошибка», которого я никогда раньше не видел ...

-Изменение строки Set на это ( и их вариации):

xlApp.Workbooks.Open MyFile
Set xlWorkBook = xlApp.Workbooks(Dir(MyFile))

-Обеспечение полного закрытия Excel перед запуском кода

Огорчает то, что этот код отлично работал на прошлой неделе, поэтому я тоже потеря относительно того, почему он внезапно перестал работать. Любая помощь будет принята с благодарностью.

1 Ответ

2 голосов
/ 14 июля 2020

Workbooks.Open может вызвать проблемы, если вы вызовете его в уже открытой книге.

Итак, не открывайте дважды. Удалите следующую строку:

xlApp.Workbooks.Open MyFile
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...