Не удалось зарегистрировать библиотеку макросов vb Outlook 2016

Обновлено: 05.07.2024

В Microsoft Office мы используем Visual Basic для приложений (VBA) для создания пользовательских программ, которые расширяют базовые функции Office и помогают сэкономить время за счет автоматизации повторяющихся задач. Мы называем эти небольшие программы VBA макросами.

В этом руководстве мы хотели предоставить наиболее полный ресурс по разработке макросов для Outlook. Мы сосредоточимся на изучении основ Outlook VBA для начинающих, научимся писать макросы, а затем рассмотрим некоторые более продвинутые полезные идеи макросов. Судя по отзывам, которые мы получили, после изучения этого руководства вы сможете разрабатывать и запускать простые макросы VBA для Outlook.

  • Сначала основы. Мы узнаем, как вставлять и сохранять простой пользовательский макрос VBA в активный сеанс Outlook.
  • Затем мы настроим среду разработки макросов на нашем компьютере.
  • Мы рассмотрим самые простые примеры Outlook VBA. Это поможет вам понять основы разработки макросов и позволит вам писать простые макросы.
  • Далее мы продолжим и определим ярлык для нашего макроса на панели быстрого доступа. Это позволит нам с легкостью запустить макрос.
  • И в завершение мы включим макросы Outlook и обработаем их параметры безопасности, чтобы гарантировать, что код действительно будет выполняться при появлении соответствующего запроса на наших компьютерах.

Можно ли записать макрос Outlook?

В отличие от других приложений Office, в Outlook нет простого средства записи макросов для записи действий пользователя и автоматического создания необходимого кода VBA в фоновом режиме. Поэтому, если мы хотим добавить в Outlook собственные пользовательские функции, нам нужно научиться писать простые программы VBA и включать их в сеанс Outlook.

Примечание. Если вам интересно узнать, как на самом деле работает средство записи макросов Office, я бы порекомендовал изучить учебные пособия по макросам MS Word и Excel VBA.

Запись макросов VBA в Outlook

  1. Сначала откройте Microsoft Outlook.
  2. Теперь нажмите сочетание клавиш Alt + F11.
  3. Откроется интегрированная среда разработки (IDE) для разработчиков VBA.
  4. Разверните дерево проекта до узла ThisOutlookSession.
  5. Щелкните правой кнопкой мыши ThisOutlookSession и выберите "Вставить".
  6. Теперь вы собираетесь вставить модуль Visual Basic. Для этого выберите Модуль.
  7. Вставьте свой код VBA в окно модуля.
  8. Нажмите «Файл», затем выберите «Сохранить».
  9. Закройте среду разработчика. Это вернет вас к пользовательскому интерфейсу Outlook.

Примечание. Прочтите несколько простых примеров кода, которые помогут вам начать работу с VBA. Никогда не копируйте код VBA из неизвестных ресурсов.

Как настроить вкладку разработчика в Outlook?

Если вы будете часто разрабатывать макросы Outlook, вам может потребоваться настроить среду разработки Office. Звучит красиво, не так ли? На самом деле это довольно простая процедура. Читайте подробности:

Полезные примеры VBA для Outlook

Создать сообщение электронной почты

Этот простой фрагмент программного кода создает новый элемент сообщения электронной почты.

Сценарий начинается с создания почтового элемента Outlook, затем он устанавливает поля "Кому", "Тема", "Основной текст" и "Копия". Наконец, он отображает сообщение в Outlook, чтобы вы могли просмотреть и отправить его вручную.

Дополнительное примечание. Вы можете использовать предопределенные шаблоны Outlook при определении новых сообщений электронной почты с помощью VBA. Для этого вам потребуется использовать метод CreateItemFromTemplate и указать расположение файла шаблона Outlook (*. oft).

Отправить электронное письмо программно

Если вы хотите, чтобы Outlook автоматически отправлял только что созданное электронное письмо, вы можете добавить следующую строку в код, опубликованный выше. Вставьте следующую строку перед оператором End Sub предыдущего фрагмента.

Прикрепить файл к электронному письму

Во многих случаях вы хотели бы автоматизировать отправку электронного письма с прикрепленным к нему файлом. Это может быть документ Word, электронная таблица Excel, презентация Powerpoint, документы PDF и т. д.». Если вы хотите отправить электронное письмо с вложениями программно, используйте этот код:

  • Убедитесь, что вы указали правильный путь и имя файла вложения во фрагменте кода.
  • В этом примере я указал несколько получателей электронной почты, пожалуйста, настройте по мере необходимости.

Создать задачу с помощью VBA

Следующий фрагмент кода создает задачу Outlook, назначает ее другому лицу и задает тему и основной текст задачи.

Сохранить как HTML

Немногие читатели спрашивали, как автоматизировать сохранение электронных писем в формате HTML. Приведенный ниже код выполняет именно это.

Примечание. Убедитесь, что вы запускаете этот код только в сообщениях электронной почты, которые открыты в Outlook (а не в папке "Входящие" или проводнике).

Вопросы, связанные с макросами Outlook

Где хранятся макросы в Outlook?

Возможно, вы не знаете, где именно хранится ваш используемый макрос. Ну, в отличие, например, от Excel, который позволяет хранить макросы в файле personal.xlb или в определенных электронных таблицах; все макросы Microsoft Outlook хранятся в одном глобальном файле в вашей файловой системе. В частности, файл, в котором хранятся все ваши макросы, называется VBAProject.otm. Файл можно найти по адресу: C:\users\\AppData\Roaming\Microsoft\Outlook.

Кнопка быстрого вызова макросов Outlook

Следующим шагом будет вставка небольшой кнопки быстрого доступа, которая позволит нам легко запускать макрос. Для простоты мы вставим эту кнопку на панель быстрого доступа.

Примечание. Вы можете использовать аналогичную процедуру, чтобы разместить значок на самой ленте, а не на панели быстрого доступа.

Как включить макрос в Outlook?

Этот шаг необязателен, и его следует выполнять только в том случае, если вы получаете сообщение об ошибке при запуске только что созданного макроса.

  1. Далее разрешите Outlook запускать наш макрос VBA. По умолчанию Microsoft Office отключает макросы и не разрешает их; поэтому нам нужно определить надлежащую защиту макросов, чтобы разрешить запуск вашего пользовательского макроса Outlook.
  2. В Outlook 2016 нажмите "Разработчик" на ленте и выберите "Безопасность макросов".
    1. Выберите настройки безопасности макросов.
      1. В Outlook 2016: выберите Уведомления только для макросов с цифровой подписью, все остальные отключены или Уведомления для всех макросов.
      2. В Outlook 2019: выберите «Отключить все макросы с уведомлением». Это опубликует предупреждающее сообщение, требующее одобрения пользователя перед запуском вашего макроса.

      Примечание. Текущие настройки безопасности могут препятствовать запуску макросов в Outlook. Вот руководство о том, что делать, если макросы отключены в вашем проекте макросов Outlook.

      Как использовать макрос Outlook?

      И последнее, но не менее важное: пришло время запустить только что созданный макрос.

      1. Перейдите к панели быстрого доступа (верхняя левая часть экрана — чуть выше меню ГЛАВНАЯ).
      2. Нажмите значок, назначенный макросу.
      3. Вуаля, вы только что завершили и запустили свой (первый) макрос Outlook VBA!

      Дополнительные идеи макросов Outlook

      Несколько наших читателей спросили, можем ли мы указать дополнительные идеи для автоматизации Outlook. Вот несколько примеров для начала.

      1. Автоматически сохранять вложения во входящих сообщениях в определенную папку.
      2. Чтение списка записей о встречах из CSV-файла и автоматическое создание встреч в одном или нескольких календарях.
      3. Автоматическое создание задач/встреч/контактов из входящих электронных писем.
      4. Визуализируйте статус ответов участников на ряд повторяющихся совещаний.
      5. Отправлять электронные письма Outlook из Excel, Word или Access.
      6. Загрузить все вложения из определенной папки Outlook на свой компьютер. Если пространство вашей учетной записи Outlook ограничено, вы можете использовать этот макрос, чтобы специально загружать на диск только большие вложения (например, более 5 МБ) вместо того, чтобы управлять ими в Outlook.
      7. Экспорт контактов Outlook напрямую в базу данных Access. Обратите внимание, что в продукте доступен экспорт контактов в CSV.
      8. Автоматически обновлять информацию о собраниях для отдельных или повторяющихся встреч.

      Дальнейшие шаги

      6 мыслей на тему «Как написать полезные макросы в сообщениях Outlook 2016 и 2019?»

      Вы обнаружили, что параметры «Уведомления для макросов с цифровой подписью» и «Уведомления для всех макросов» не работают в Outlook 2016?

      В Outlook 2013 все работало нормально, в 2016 не получается.

      Не могу понять, ошибка в Outlook 2016 или нет.

      Большое спасибо. Это поможет мне сэкономить 400 минут (~7 часов) в год.

      Если это неподходящее место для публикации, сообщите мне, где, но как мне создать макрос, который использует подпись Outlook, чтобы я мог создать кнопку, которая добавит подпись к ответу или переадресованному письму, а также добавить вложенный файл?

      Здравствуйте,
      Не могли бы вы прислать нам пример макроса в Outlook, сохраняющего объединенный файл в определенном каталоге, например c:\mydir.
      Заранее спасибо за помощь
      С уважением

      Спасибо за отличное объяснение. Есть ли способ назначить сочетание клавиш? Пробовали поискать, но похоже, что это не решение?

      Отличная статья. Я заинтересован в сохранении моих заметок только в текстовые файлы. Я могу сделать это, одно за другим, с помощью мыши и/или клавиатуры. Макрос был бы хорош!

      Вы не сможете запустить свой код, пока не будут разрешены все отсутствующие ссылки.

      Эта ошибка имеет следующие причины и решения:

      Не удалось найти указанный проект или не удалось найти библиотеку referencedobject, соответствующую языку проекта.

      Неразрешенные ссылки имеют префикс MISSING в диалоговом окне "Ссылки".Выберите отсутствующую ссылку, чтобы отобразить путь и язык отсутствующего проекта или библиотеки. Выполните следующие действия, чтобы устранить ссылку или ссылки:

      Чтобы разрешить ссылки

      Отобразить диалоговое окно "Ссылки".

      Выберите отсутствующую ссылку.

      Используйте диалоговое окно "Обзор", чтобы найти отсутствующую ссылку.

      Нажмите "ОК".

      Повторяйте предыдущие шаги, пока не будут разрешены все отсутствующие ссылки.

      Как только вы найдете недостающий элемент, префикс MISSING удаляется, чтобы указать, что связь восстановлена. Если имя файла проекта, на который делается ссылка, изменилось, добавляется новая ссылка, а старая ссылка должна быть удалена. Чтобы удалить ссылку, которая больше не требуется, просто снимите флажок рядом с ненужной ссылкой. Обратите внимание, что ссылки на библиотеку объектов Visual Basic и библиотеку объектов хост-приложения удалить нельзя.

      Приложения могут поддерживать различные языковые версии своих библиотек объектов. Чтобы узнать, какая языковая версия требуется, щелкните ссылку и отметьте язык, указанный в нижней части диалогового окна. Библиотеки объектов могут быть отдельными файлами с расширением .OLB или могут быть интегрированы в библиотеку динамической компоновки (DLL). Они могут существовать в разных версиях для каждой платформы. Поэтому, когда проекты перемещаются между платформами, например, с Macintosh на Microsoft Windows, правильная языковая версия библиотеки, на которую ссылаются, для этой платформы должна быть доступна в расположении, указанном в документации к основному приложению.

      Имена файлов библиотеки объектов обычно строятся следующим образом:

      Windows (версия 3.1 и более ранние): код приложения + код языка + [версия].OLB. Например: Библиотека объектов для французского языка Visual Basic для приложений версии 2 называлась vafr2.olb. Французская библиотека объектов Microsoft Excel 5.0 называлась xlfr50.olb.

      Macintosh: код языка имени приложения [версия] OLB. Например: библиотека объектов для французского языка Visual Basic для приложений версии 2 называлась VA FR 2 OLB. Французская библиотека объектов Microsoft Excel 5.0 называлась MS Excel FR 50 OLB.

      Если вы не можете найти отсутствующий проект или библиотеку в своей системе, обратитесь к автору ссылающегося проекта. Если отсутствующая библиотека является библиотекой объектов приложения Microsoft, ее можно получить следующим образом:

      Если у вас есть доступ к электронным службам технической поддержки Microsoft, обратитесь к разделу технической поддержки этого файла справки. В разделе «Электронные услуги» вы найдете инструкции о том, как использовать соответствующую услугу.

      Если у вас нет доступа к электронным службам технической поддержки Майкрософт, библиотеки объектов Майкрософт доступны по запросу в виде примечаний к применению от Майкрософт. Информация о том, как связаться с местной организацией поддержки продуктов Майкрософт, также доступна в разделе технической поддержки этого файла справки.

      Для получения дополнительной информации выберите нужный элемент и нажмите F1 (в Windows) или HELP (в Macintosh).

      Заинтересованы в разработке решений, расширяющих возможности Office на различных платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office занимают меньше места по сравнению с надстройками и решениями VSTO, и вы можете создавать их, используя практически любые технологии веб-программирования, такие как HTML5, JavaScript, CSS3 и XML.

      Поддержка и обратная связь

      Есть вопросы или отзывы об Office VBA или этой документации? См. раздел Поддержка и отзывы об Office VBA, чтобы узнать, как получить поддержку и оставить отзыв.

      Элеонора Рид

      Вы сталкиваетесь с тем, что файлы Excel перестают работать, загружаете медиафайлы, которые невозможно воспроизвести, или открываете пароль, но защищены Ошибки? Если ответ да, вы попали в нужное место. Просто скачайте Repairit, чтобы получить быстрое решение!

      При использовании документа MS Excel или MS Access, которые ассимилируют функции или кнопки, которым требуется VBA (приложения Visual Basic) для макросов для выполнения некоторых назначенных задач, пользователь может получить ошибку компиляции "Не удается найти проект или библиотека."

      В чем причина этой ошибки?

      <р>1. Эта ошибка обычно вызвана пользовательской программой MS Access или MS Excel. Причина в том, что в программе есть ссылка на объект или тип библиотеки, который отсутствует и, следовательно, не найден программой. Соответственно, программа не может использовать функции или кнопки VB или Micro. Поэтому отправляется сообщение об ошибке.

      <р>2. Иногда библиотека может переключаться или отключаться, что приводит к отсутствию связи между библиотекой и программным кодом. Поэтому выдается ошибка компиляции.

      <р>3. Поскольку существуют стандартные библиотеки, отсутствие библиотеки звучит как наименьший шанс. Другая возможная причина в этом случае заключается в том, что причиной ошибки является несоответствие библиотеки.Например, у пользователя может быть библиотека (sat Outlook) версии 2007, но ссылка на код может искать версию 2010 этой конкретной библиотеки. Таким образом, программа не может найти соответствующую библиотеку, что приводит к ошибке компиляции.

      <р>4. Другой сценарий для того же сообщения об ошибке касается использования Microsoft XP, который включает ссылку на веб-службу в проекте VBA. При запуске этого проекта в MS Office 2003 появляется та же ошибка компиляции. Причина та же, т. е. объект или тип библиотеки отсутствует (или не найден).

      Решение1. Добавление или удаление ссылки на библиотеку

      Первое решение исправить ошибку «Не удается найти проект или библиотеку» в MS Access — удалить ссылку на библиотеку. Для этого вы можете выполнить этот пошаговый процесс.

      Шаг 1. Запустите MS Access на своем ПК и откройте базу данных/приложение, в котором отображается ошибка.

      Шаг 2. Теперь одновременно нажмите «Alt» + «F11», чтобы открыть окно редактора VBA.

      Шаг 3. Теперь нажмите кнопку "Инструменты" в верхней строке меню и выберите "Настройки" в раскрывающемся меню.


      Шаг 4. В следующем диалоговом окне снимите флажок «Отсутствует: объект Microsoft Access» и нажмите «ОК», чтобы сохранить изменения.


      Перезапустите MS Access и проверьте, сталкиваетесь ли вы с той же ошибкой больше или нет.

      Решение 2. Регистрация файла библиотеки

      Во многих случаях при установке нового программного обеспечения автоматически отменяется регистрация нескольких определенных библиотек. В таких случаях многие функции MS Access не будут работать, и вам будет предложено сообщение об ошибке «Не удается найти проект или библиотеку». Быстрый и простой способ решить эту проблему — просто зарегистрировать файл библиотеки вручную.
      Несмотря на то, что вручную зарегистрировать файл библиотеки немного сложно, вы можете выполнить следующие шаги, чтобы выполнить эту работу.

      Шаг 1. Щелкните правой кнопкой мыши кнопку "Пуск" и выберите "Командная строка (администратор)", чтобы запустить командную строку от имени администратора.

      Шаг 2. В окне CMD просто введите REGSVR32 «Путь к файлу DLL, который вы хотите зарегистрировать». Например, REGSVR32 «C:\Program Files\Blackbaud\The Raisers Edge 7\DLL\RE7Outlook.dll».


      Это зарегистрирует нужный файл библиотеки, и вы больше не столкнетесь с той же ошибкой.

      Решение 3. Попробуйте отменить или перерегистрировать библиотеку

      Наконец, если ничего не работает, вы можете либо перерегистрировать, либо полностью отменить регистрацию файла библиотеки, чтобы исправить ошибку. Во-первых, давайте посмотрим, как перерегистрировать файл библиотеки.

      Шаг 1. Нажмите «Windows» + «R» и введите Regsvr32.exe.


      Шаг 2. Нажмите Enter и введите полный путь к отсутствующему файлу библиотеки. Например, «regsvr32» c:\program files\common files\microsoft shared\dao\dao360.dll.
      Если это не устранит ошибку, вы можете просто отменить регистрацию файла библиотеки. Для этого замените «Regsvr32.exe» на «regsvr32 -u» и снова вставьте путь к библиотеке.

      Вот и все; отмена регистрации файла библиотеки устранит ошибку «не удается найти проект или библиотеку», и вы сможете работать с базой данных MS Access без перерыва.

      Видеоруководство по устранению ошибки «Не удается найти проект или библиотеку»

      Решение 4. Восстановите файл MS Excel с помощью инструмента восстановления Excel

      Стороннее программное обеспечение для восстановления файлов Excel позволяет быстро и точно решить все подобные проблемы. Ниже описано одно из лучших программ для восстановления файлов Excel для восстановления поврежденных / поврежденных файлов Excel.

      Этот Wondershare Repairit - File Repair доступен как для одной, так и для нескольких систем. Инструмент для восстановления файлов поддерживает версии Windows 11/10/8/Vista/7 и поддерживает версии 10.10~OS 10.15 для Mac. Это позволяет восстанавливать поврежденные файлы Excel (. XLSX) и восстанавливать все данные из поврежденного файла в исходный файл Excel.

      Шаг 1. Выберите поврежденный файл Excel с диска и добавьте файлы.

      исправить поврежденный файл Excel с восстановлением инструмент шаг 1

      Шаг 2. Выберите один или все поврежденные файлы Excel, чтобы начать процесс восстановления.

      исправить поврежденный файл Excel с восстановлением инструмент шаг 2

      Шаг 3. Просмотрите восстановленный файл Excel.

      восстановите поврежденный файл Excel с помощью инструмента восстановления, шаг 3

      Шаг 4. Выберите предпочтительное место для сохранения восстановленного файла Excel.

      восстановить поврежденные Файл Excel с инструментом восстановления, шаг 4

      В дополнение к инструменту восстановления Excel или программному обеспечению для восстановления файлов Excel, несколько советов могут помочь в быстром исправлении (для восстановления поврежденных файлов Excel).

      Вариант 1. Когда файл Excel открыт, попробуйте выполнить одно из следующих действий.

      <р>1. Попробуйте на другом компьютере.

      <р>2. Отключите автосохранение.

      <р>3. Отключите обмен файлами.

      <р>4. Не запускайте Excel с дискеты.

      <р>5. Сохраните файл как веб-страницу и снова откройте его как файл Excel.

      Вариант 2. Если Excel не может открыть файл, попробуйте выполнить одно из следующих действий.

      <р>1. Откройте поврежденный файл на жестком диске. Копировать с дискеты.

      <р>2. Найдите файл .xlb. Также сохраните резервную копию. Удалить .xlb. Перезапустите Excel.

      <р>3. Откройте файл в MS Word или Блокноте. Это позволит вам восстановить данные, но не форматировать их.

      <р>4. С помощью программы просмотра MS Excel 97/2000 вы можете просматривать данные и распечатывать их. Откройте файл с помощью этой бесплатной программы для восстановления данных. Эта программа восстановит форматирование, а также значения ячеек.

      Статус Эта тема была заблокирована и не открыта для дальнейших ответов. Первоначальный инициатор темы может использовать кнопку «Отчет», чтобы запросить ее повторное открытие, но любой другой пользователь с похожей проблемой должен создать новую тему. Посмотрите наше приветственное руководство, чтобы узнать, как пользоваться этим сайтом.

      драцена

      Я запускал этот код VBA для создания электронной почты в течение многих лет (в настоящее время Access 2013), и на этой неделе он меня не устроил. Но другой человек в моей группе прекрасно запускает процесс со своего ПК.
      Ошибка:
      Ошибка выполнения '-2147319779 (8002801d)':
      Ошибка автоматизации
      Библиотека не зарегистрирована.

      OS=Win7 (создается Office 365) с Access 2013 и Outlook 2013 в корпоративной локальной сети.

      Неверная строка кода:
      Set MyOutlook = New Outlook.Application

      Это тоже не работает:
      Set MyOutlook = GetObject(, "Outlook.Application.15")

      В Google их много, но пока нет уверенности, что можно редактировать реестр. Надеюсь, что вы, ребята, помогая со всеми запросами уведомлений Excel, видели это.

      Спасибо, что прочитали мой пост

      Rollin_Again

      Что отображается при отображении ссылок в редакторе VB?

      Возможно, вы сможете просто перерегистрировать DLL или что-то еще с помощью команды rgsvr32.

      База данных

      Вы можете попробовать это?

      Затемнить MyOutlook как объект
      Set MyOutlook = CreateObject("Outlook.Application")

      Вы проверили свой референс, чтобы убедиться, что ничего не пропало?

      драцена

      Я не склонен думать, что изменение кода решит проблему, так как это работает на ПК двух других пользователей. Я думаю, проблема с реестром,

      Это в коде
      Dim MyOutlook As Outlook.Application
      Rollin мои ссылки выглядят как прикрепленные:

      Ссылки выглядят так же и на рабочих ПК

      Вложения

      OutlookReference1.PNG

      У вас зарегистрирован Outlook 2015, но в описании вашей системы указано Outlook 2013.
      "OS=Win7 (собирается Office 365) с Access 2013 и Outlook 2013 в корпоративной локальной сети.

      Так что это?
      а что у рабочих компов?

      У вас недавно было большое обновление MS, как у меня?

      драцена

      Я ценю всю помощь!
      OBP, Outlook версии 15.0 на самом деле является Outlook 2013 (outlook 2010 – 14.xx и т. д.)
      Рабочие компьютеры одинаковы.

      Мы работаем в Office 365, но сетевые администраторы не разрешают развертывание новых вещей, пока они не протестируют все остальное дерьмо, которое у нас здесь работает. Я думаю, что 365 хочет продвигать Office 16 прямо сейчас. Недавно у нас сменились сетевые поставщики, и я потерял контакты "перейти" в этой группе. Поэтому я не могу точно сказать, чем они занимаются.

      Возможно, проблема связана со сценариями времени выполнения, и вам необходимо перерегистрировать их.
      Вы пытались снять с них галочку, закрыть Access, снова открыть Access и посмотреть, сможете ли вы снова зарегистрировать библиотеки>

      драцена

      Кажется, я что-то напутал. появляется папка office16 в моей папке Program Files (x86) от 08.05.2016. Это совпадает с тем, что он не работает в понедельник. Удовольствие от того, что другие люди возятся с вашей машиной.

      Не знаю, что теперь делать, но готов поспорить. Когда я пытался зарегистрироваться, ему не удалось найти MSOUTL.OLB. Моя офисная хрень показывает, что это 2013 год. Хотел бы закончить установку 2016 года, но я поддерживаю пользователей 2013 года??

      Все остальное работает нормально. Завтра я по-новому взгляну на проблему.

      Спасибо, что остаетесь со мной.

      База данных

      в VBE IDE в разделе Инструменты > Справочник, если вы нажмете кнопку обзора, а затем попытаетесь найти файл MSOUTL.OLB, возможно, вы сможете исправить проблему.

      C:\Program Files (x86)\Microsoft office\Office14\MSOUTL>OLE

      на вашем компьютере путь может немного отличаться.

      Кроме того, как я упоминал ранее, если вы используете позднее связывание, вам не нужно будет добавлять ссылки. Я часто использую Access и ежедневно отправляю из него электронные письма с напоминаниями, и у меня нет ссылок, установленных для Outlook, вместо этого я создаю объект с кодом, когда мне это нужно, вот так

      Затемнить iOutlook как объект
      Set iOutlook = CreateObject("Outlook.Application")

      драцена

      Я пытаюсь реализовать сценарий с поздним связыванием и преодолел первоначальную ошибку, а теперь терплю неудачу с этим оператором:
      Set MyMail = MyOutlook.CreateItem(olMailItem)

      Это в цикле "До тех пор", который собирает адреса электронной почты, форматирует тело для адреса.

      Это не удается с первой попытки?
      Размерили ли вы MyMail как MailItem?

      Затемнить objMessage как MailItem
      Установить objMessage = objOutlook.CreateItem(olMailItem)

      База данных

      Не видя всего подпрограммы, я не могу воссоздать код, так как не знаю, что эта процедура пытается сделать. Это не так просто, как изменить одну строку кода, вам нужно будет внести изменения в нескольких местах. Если вы сможете загрузить блок кода, мы попытаемся воссоздать его для вас.

      драцена

      Хотя я ценю помощь, DataBase намекнул, что в вашем предыдущем посте это было так же просто, как изменить пару строк кода.

      Вы можете попробовать это?

      Затемнить MyOutlook как объект
      Set MyOutlook = CreateObject("Outlook.Application")

      Вы проверили свой референс, чтобы убедиться, что ничего не пропало?

      Должна быть правильная ссылка на Outlook независимо от того, когда происходит привязка. Моя проблема связана с Office 365 и средой, в которой я пытаюсь работать, а не с VBA.

      драцена

      Что ж, проблема с моим справочником по VBA устранена сама собой. Либо сетевые боги решают свою проблему, либо какое-то другое чудо. Существует версия MSOUTL.OLB в Office16\Program Files (x86) от 08.05.2016. Вот когда он перестал работать. Мои ссылки по-прежнему указывают на библиотеку объектов Outlook 15.

      Я подозреваю, что правильная регистрация OLB решила бы мою проблему. Я мог запустить процесс на других машинах, поэтому не собирался расстраивать сетевых администраторов и начинать взламывать мой реестр без их благословения.

      Примечание. Я оставил часть кода "позднего связывания" на месте, когда он начал работать. Но это не сработает без хорошего референса.

      Читайте также: