У меня есть отчет, который я отправляю ежедневно.
В нем есть связанное изображение с диапазоном, который мне нужно вставить в электронное письмо и отправить.
У меня есть электронное письмо, сохраненное как файл шаблона Outlook.что я изменяю по мере необходимости.
Код, который я запускаю из Excel.
Я создаю объект Outlook и открываю электронную почту Outlook из файла шаблона .oft, затем я хочу найти текст идентификатора ( ВСТАВЬТЕ ИЗОБРАЖЕНИЕ ЗДЕСЬ ) и замените его связанным изображением из Excel, которое было скопировано из буфера обмена.Я пытаюсь добавить его как InLineShape, чтобы он правильно работал в теле письма.
Я пытался сделать это с помощью определенного WordEditor из тела письма.
Я посмотрел в HTML, чтобысделать это, но я решил, что объект WordEditor будет лучшим подходом.После того, как я вставил его, мне нужно установить высоту шкалы на 0,75, чтобы она правильно отображалась.
Оттуда просто нажмите кнопку Отправить.
Вот краткий пример моего кода:
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookEmail = OutlookApp.CreateItemFromTemplate(templatePath)
OutlookEmail.Display 'Just for code checking
ThisWorkbook.Worksheets("Email Sheet").Pictures("Summary Email Screenshot").Copy
Set EmailText = OutlookEmail.GetInspector.WordEditor
With EmailText.Range.Find
.ClearFormatting
.Execute findText:="*INSERT IMAGE HERE*", MatchWholeWord:=True, MatchCase:=True, _
MatchWildcards:=False, ReplaceWith:="^c", Replace:=wdReplaceOne
End With
EmailText.InlineShapes(EmailText.InlineShapes.count).ScaleHeight = 75
'OutlookEmail.Send
Проблема возникает с последней строкой перед отправкой.
Что происходит, если он не вставлен как InLineShape,но только форма, чтобы он плавал поверх текста.
Мне нужно, чтобы он был InLineShape, чтобы содержимое после изображения перемещалось вниз и отображалось, а не закрывалось им.Некоторое время я искал форумы, пытаясь найти ответ, но безрезультатно.
Я довольно хорошо разбираюсь в Excel VBA, но это моя первая попытка использовать Outlook и Word VBA, поэтому, пожалуйста, потерпите меня.