PowerPoint VBA: получить данные из уже открытого файла Excel - PullRequest
0 голосов
/ 29 апреля 2020

Нажав кнопку в PowerPoint, я хотел бы получить некоторые значения ячеек из текущей открытой книги Excel (какая бы книга ни была открыта в момент нажатия кнопки).

В PowerPoint VBA Microsoft Библиотека объектов Excel 16.0 включена.

Но при запуске:

sss = ActiveWorkbook.Sheets(1).Range("A1")
MsgBox sss

выдает эту ошибку:

Run-time error '91': Object variable or With block variable not set

Как запросить значение ячейки в активной книге?

1 Ответ

1 голос
/ 29 апреля 2020

Вам нужно будет квалифицировать свою справочную книгу. Во-первых, используйте GetObject, чтобы получить существующий экземпляр Excel, как предложила @Cindy Meister.

Dim excelApplication As Excel.Application
Set excelApplication = GetObject(, "Excel.Application")

Однако для позднего связывания можно обойтись без ссылки на библиотеку объектов Microsoft Excel и объявить переменную приложения как Object.

Dim excelApplication As Object
Set excelApplication = GetObject(, "Excel.Application")

Затем укажите ваш Справочник по работе с книгами выглядит следующим образом ...

Dim ss As String
ss = excelApplication.ActiveWorkbook.Sheets(1).Range("A1").Value

Таким образом, у вас будет следующее ...

Dim excelApplication As Object
Set excelApplication = GetObject(, "Excel.Application")

Dim ss As String
ss = excelApplication.ActiveWorkbook.Sheets(1).Range("A1").Value

MsgBox ss, vbInformation

Set excelApplication = Nothing
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...