1

Я создал макрос VBA в Word 2007, который определяет, открыт ли Excel и определенную книгу Excel, открывает книгу (и Excel, если необходимо), а затем выполняет различные задачи в книге.

В разделе «Инструменты и ссылки» я проверил библиотеку объектов Microsoft Word 12.0, библиотеку объектов Microsoft Office 12.0 и библиотеку объектов Microsoft Excel 12.0. Макросы запускались просто отлично. Затем я недавно перешел на новый ПК и Office 2010, и ни одна из приведенных ниже команд не дает результатов - appExcel продолжает оставаться Nothing.

Set appExcel = GetObject(, "Excel.Application")

Set appExcel = CreateObject("Excel.Application")

Я искал высоко и низко конкретную информацию о том, как исправить это, но безрезультатно. Я нашел различную информацию, которая указывает либо на регистрацию dll 2007 и 2010 годов, либо на то, что необходимо не регистрировать, но нигде я не могу найти инструкции о том, как зарегистрироваться или отменить регистрацию. Я также не могу найти четко имена файлов. Я надеюсь, что кто-то в Stack Exchange может помочь!

3 ответа3

1
Dim excelapp As Object
Set excelapp = CreateObject("Excel.Application")

Это то, что вы ищете. Если вы этого не видите, используйте excelapp.visible = true .

1

Хотя исправление, рекомендованное Raystafarian, помогло, полное решение включало удаление следующего раздела реестра:

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib {00020813-0000-0000-C000-000000000046}\1.8

Теперь я очень счастливый турист.

0

Исправьте ссылки API следующим образом:

  1. В Excel нажмите Alt+F11, чтобы перейти в окно кодирования
  2. Откройте меню « Инструменты» и выберите « Ссылки».
  3. Снимите флажок Missing: элемент в списке
  4. Прокрутите вниз и добавьте ссылку на новую версию Microsoft Word.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .