У меня есть макрос Excel, отправляющий персонализированные файлы в виде вложений электронной почты Outlook в список людей.
Текст сообщения HTML взят из источника обычной электронной почты, полученной в Outlook. Атрибут charset в 'head' был установлен на 'iso-8859-1' (ISO для Западной Европы), и он не поддерживает некоторые символы, например c для венгерского. Я заменил его на «iso-8859-2» (ISO Центральная Европа), но электронное письмо все еще отправляется в iso-8859-1. Я также установил для свойства MailCtem InternetCodepage значение 28592, которое теоретически делает то же самое, но все еще безуспешно.
Исходный метатег, извлеченный из электронного письма:
<meta http-equiv=Content-Type content='text/html; charset=iso-8859-1'>
Измененный тег:
<meta http-equiv=Content-Type content='text/html; charset=iso-8859-2'>
VBA для установки кодировки:
.InternetCodepage = 28592
Во время выполнения после установки свойства HTMLBody этот метатег полностью отсутствует в строке.
Результат:
<meta http-equiv=Content-Type content='text/html; charset=iso-8859-1'>
Вы бы правильно предположили, что, возможно, настройки Outlook также мешают работе, но я уже установил кодировку «Центральноевропейская (ISO)» для исходящих сообщений.
Идеи