Создание слияния электронной почты excel с IBM Notes

Доброе утро,

У меня есть код, который создаст почтовый ящик электронной почты в IBM Notes на основе столбцов в excel. Только проблемы, с которыми я сталкиваюсь, я хотел бы создать отдельные письма для каждого адреса электронной почты в столбце A. Я также не могу понять, как связать его с конкретным файлом для каждого получателя, расположение файлов будет в столбце C. Может кто-нибудь мне помочь?

Sub SendQuoteToEmail() Dim NSession As Object Dim NDatabase As Object Dim NUIWorkSpace As Object Dim NDoc As Object Dim NUIdoc As Object Dim WordApp As Object Dim subject As String Dim EmailAddress As Variant subject = Worksheets("Sheet1").Range("B2") Debug.Print subject Set NSession = CreateObject("Notes.NotesSession") Set NUIWorkSpace = CreateObject("Notes.NotesUIWorkspace") Set NDatabase = NSession.GetDatabase("", "") If Not NDatabase.IsOpen Then NDatabase.OPENMAIL For all Emai-Addresses EmailAddress = Worksheets("Sheet1").Application.Transpose(Range("A2").Resize(Range("A" & Rows.Count).End(xlUp).Row).Value) Set NDoc = NDatabase.CreateDocument With NDoc .Form = "Memo" ' or .ReplaceItemValue("Form", "Memo") .SendTo = EmailAddress .subject = subject End With Set rtitem = NDoc.CreateRichTextItem("Body") Call rt.AppendText(Worksheets("sheet1").Range("d2") & vbLf & vbLf) Call rt.EmbedObject(1454, "", "c:filepath.doc") Call NDoc.Save(True, False) Next ' email-address Set NDoc = NDatabase.CreateDocument With NDoc .SendTo = EmailAddress '.CopyTo = "" .subject = subject .body = Worksheets("sheet1").Range("d2") & vbLf & vbLf .Save True, False End With Set NUIdoc = NUIWorkSpace.EDITDocument(True, NDoc) With NUIdoc Set WordApp = Nothing End With Set NSession = Nothing End Sub 

Чтобы прикрепить файлы, посмотрите на метод EmbedObject класса NotesRichTextItem.

Также есть несколько других проблем с вашим кодом. Вы не должны использовать расширенную нотацию при назначении значений полям, используйте метод ReplaceItemValue класса NotesDocument для хранения значений. Поле Body – это поле с расширенным текстом, и вы должны использовать класс NotesRichTextItem для всего, что связано с этим полем, поэтому используйте методы Appendtext и AddNewLine для записи содержимого в поле. Это также позволит вам использовать метод EmbeddObject, о котором я упоминал выше, для прикрепления файлов.

Возможно, вы найдете полезные подсказки в классе почтовых уведомлений. Я только что опубликовал обновленную версию на http://blog.texasswede.com/updated-mailnotification-class-now-with-html-email-support-and-web-links/

Надеюсь, поможет!

Это кажется более важной частью кода для создания писем в Notes: отправьте электронное письмо на определенные контакты Lotus Notes с помощью VBA

Вы хотите, чтобы ваши письма открывались на экране, прежде чем отправлять их, или их можно отправить невидимыми?

UPDATE: предлагаемый код

 subject = Worksheets("Sheet1").Range("B2") Debug.Print subject Set NSession = CreateObject("Notes.NotesSession") Set NUIWorkSpace = CreateObject("Notes.NotesUIWorkspace") Set NDatabase = NSession.GetDatabase("", "") If Not NDatabase.IsOpen Then NDatabase.OPENMAIL For all email-addresses EmailAddress = Worksheets("Sheet1").Application.Transpose(Range("A2").Resize(Range("A" & Rows.Count).End(xlUp).Row).Value) Set NDoc = NDatabase.CreateDocument With NDoc .Form= "Memo" ' or .ReplaceItemValue("Form", "Memo") .SendTo = EmailAddress .subject = subject End With set rtitem= NDoc.CreateRichTextItem("Body") Call rt.AppendText(Worksheets("sheet1").Range("d2") & vbLf & vbLf) Call rt.EmbedObject(1454, "", "c:filepath.doc") Call NDoc.Save(True, False) Next ' email-address 

Для обработки: Looping, имена файлов, адреса …

  • Ошибка выполнения 5631
  • Слияние Word с данными Excel
  • Mailmerge открыть документ вместо ссылки на изображение
  • Условное заявление Microsoft Word MailMerge для вставки изображения
  • Мне нужно удалить ячейку в текстовом документе после слияния почты из excel
  • Добавить CC и BCC с Mail Merge
  • MailMerge из Excel - Ошибочное поведение макросов
  • Отдельные файлы MailMerge Excel для Word
  • Запуск слияния почты из Excel во встроенном файле .docx (Word)
  • Добавить подпись Outlook по умолчанию при слиянии электронной почты через Excel
  • Программно создавать слайды PowerPoint PowerPoint из данных Excel
  • Interesting Posts

    Сохранить excel как pdf, имя файла как значение переменной

    Дублирование результатов с помощью макроса excel

    VBA: сложная функция VLOOKUP (двухстолбцовое совпадение по вертикали, однострочное совпадение по горизонтали). Рекомендации по методу

    Сумма не превышает оценку от 0 до 9

    Advance AutoFilter для исключения определенных значений

    Application.WorksheetFunction.VLookup Нет ошибки совпадения

    Я хочу добавить ячейку в существующий лист excel, но я получаю эту ошибку jxl.read.biff.BiffException:

    VBA Excel – Блокировка / разблокировка ячеек с использованием условного форматирования?

    В EXCEL, как мне преобразовать значение времени J2000 в стандартную дату и военное время?

    Изменение таблицы VBA с помощью нескольких ячеек

    Формула Excel для возврата значений ячейки

    XLSX-файл, запрашивающий информацию о безопасности только в IE11

    Экспорт столбцов конкретной таблицы в Excel

    Ошибка Filedialog: несоответствие типов

    Отображение даты из листа Excel xlsx в Java

    Давайте будем гением компьютера.