Это скорее несколько идей, чем ответ, но он может помочь вам решить, что вы хотите.
Если вы хотите форматировать, например, жирный или итальянский c, тело письма должно быть Html. У вас может быть файл, содержащий что-то вроде:
<p>Dear %receiver%,<br>Good day.</p>
<p>Please find following other request details:</p>
<p>Name: %name%<br>I: <b>%id%</b><br>Flag: %flag%</p>
<p>Ammmmm: %xxx% %yyyyy%<br>Collection Date: <i>%colldate%</i></p>
Это допустимо, если не полностью, Html. Если вы не знаете, Html:
…
- это абзац
- это разрыв строки - … выделен жирным шрифтом
- … is itali c
Строки, такие как «% receive%» и «% colldate%» будут заменены во время выполнения со значениями из соответствующей ячейки диапазона. Вам потребуется другой файл, чтобы указать замену. Примерно так:
receiver C15
name A4
id B3
flag B4
colldate B6 m/dd/yyyy
Первый столбец - это строка кода (без знаков процента), которая появляется в шаблоне. Второй столбец - это ячейка в диапазоне, содержащая значение для замены кода. Если вы хотите, чтобы выходные числа и даты были отформатированы, у вас может быть третий столбец, определяющий формат чисел.
При вышеупомянутом подходе ваш VBA должен будет прочитать два файла, а затем l oop вниз Перечислите во втором файле замену строк значениями ячеек.
Поскольку вы используете Excel, эти два файла могут быть рабочими листами. Второй файл уже является таблицей, поэтому легко отображается в Excel. Первый файл должен быть преобразован в лист, например:
Row Column A
1 Dear %receiver%,
Good day.
2 Please find following other request details:
3 Name: %name%
I: <b>%id%</b>
Flag: %flag%
4 Ammmmm: %xxx% %yyyyy%
Collection Date: <i>%colldate%</i>
Я оставил жирный шрифт и выделил c в виде тегов Html на этом листе. Вы можете использовать форматирование Excel, но тогда вашему коду придется искать жирный и италийский символы c в каждой ячейке и генерировать необходимые Html. Это замедлит вашу рутину и будет более продвинутым и намного более хитрым VBA, который в противном случае был бы необходим. Я могу объяснить, что будет, если вы хотите знать.
Вам также необходимо заменить vbLF в ячейках на «
» и окружить значение «
» и «
”.
За одним объяснением, которое я объяснил, VBA добиться такого преобразования было бы довольно просто. Я ожидаю, что любой онлайн-учебник по Excel-VBA охватит необходимые утверждения.