Включая код для ссылки на библиотеку для отправки электронной почты через Excel - PullRequest
0 голосов
/ 21 февраля 2019

Для работы у нас есть файлы Excel, в которых мы создаем отчеты, которые утверждаются в электронном виде и сохраняются в формате PDF с помощью кода модуля Excel.Я настроил командную кнопку, чтобы отправлять электронное письмо клиентам, когда отчеты были утверждены, чтобы они знали, когда можно приступить и посмотреть на новые.Однако мне нужно, чтобы код Excel включал соответствующие ссылки на компьютере менеджера проекта, когда они нажимают кнопку «SendEmail», чтобы им не приходилось делать это вручную каждый раз, когда они находятся в другом проекте Excel.

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

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

То, что вы ищете, называется «Надстройка VBA для Microsoft Excel».Вставьте здесь определение с веб-сайта CPearson :

Надстройка XLA - это определенный тип рабочей книги, которая предоставляет настраиваемые функции и / или инструменты, расширяющие базовые функции Excel.Надстройка может содержать пользовательские функции, которые предоставляют функции расчета, специфичные для вашей области интересов или бизнеса, функции, которые выходят за рамки обычных возможностей вычисления в Excel.Надстройка также может предоставлять инструменты для манипулирования данными в рабочей книге.Действительно, надстройка может быть написана, чтобы делать почти все, что вы хотите.Если это можно сделать вручную, то это может быть автоматизировано с помощью надстройки XLA.

Высокоуровневые рассуждения следующие:

  • Вы ставите «отправитькод электронной почты », который имеется в вашей рабочей книге в новой рабочей книге, в которую вы добавляете все необходимые ссылки и общий код
  • Затем вы сохраняете свою рабочую книгу как надстройку вместо простой макро-активированной рабочей книги (расширение .xlam).
  • Вы просите своего пользователя установить надстройку один раз в своем Microsoft Excel: с тех пор они смогут использовать эту функцию на любой открытой книге, которую открывают., без явной необходимости писать код в нем.

В Интернете есть тонна руководств о том, как создавать классные надстройки, я предлагаю вам следующее:

  • Очень простая надстройка с кнопкой ленты Excel (полезно, если вы хотите, чтобы они отправили ActiveWorkbook по электронной почте в виде файла PDF без этой книги, на самом деле в ней есть какой-либо код): найдите его здесь .
  • Более полный список ссылок о том, какЧтобы создать надстройку для Excel: найдите ее здесь .

Обратите внимание, что надстройки Excel можно писать в VBA, хотя вы можете использовать языки как C# (или VB.NET, хотя я предпочитаю первый), чтобы иметь гораздо больше функциональности и гибкости.Если вам просто нужно отправить рабочую книгу по электронной почте и уже есть рабочий код для этого в VBA, тогда переходите к надстройке VBA.Но я предлагаю вам не исключать C#, потому что он чрезвычайно мощный.

0 голосов
/ 21 февраля 2019

Не используйте раннее связывание - вот пример создания электронного письма из Excel без каких-либо ссылок:

Sub LateBindingEmailExample()

    Dim mail As Object, msg As Object

    Set mail = CreateObject("Outlook.Application")
    Set msg = mail.createitem(0)

    With msg
        .To = "exampleemail@exampledomain.com"
        .Subject = "Here is the subject"
        .htmlBody = "Here is the body"
        .Display
        '.Send
    End With

    Set msg = Nothing

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