Грузинский текст неправильно отправлен Gmail с помощью Excel Macro - PullRequest
0 голосов
/ 17 марта 2020

Я пытаюсь настроить макросы для отправки сообщений на адреса электронной почты, указанные в листе Excel.

У меня есть тема сообщения в поле F3 и Сообщение в поле F4

Данные начинаются со строки 14

Наконец, это выглядит следующим образом (используется макрос нижняя часть вопроса:

enter image description here

Я выполняю макрос, так как в результате отправляются письма, но грузинский текст разбит, вместо грузинских букв ставятся вопросительные знаки.

Я не могу понять, что здесь не так, макрос делает это или Gmail нарушает мой почтовый текст? Результат таков:

enter image description here

Вы видите, что грузинский текст не работает.

Есть какие-либо предложения по этому поводу? Что это происходит и как это исправить?

Sub SendWith_SMTP_Gmail()
'Works On Windows (Not Mac). Mac Users Should Use Zapier Integration
'Created by Randy Austin www.ExcelForFreelancers.com
Dim EmailMsg, EmailConf As Object
Dim Subj, Mess, Json, URL, LastName, FirstName, Email, Attach As String
Dim ContactRow, LastRow, SentCounter As Long
Dim EmailFields As Variant
Set EmailMsg = CreateObject("CDO.Message") 'CDO (Collaboration Data Objects) -Make sure you have the 'CDO For Windows' Library Selected
Set EmailConf = CreateObject("CDO.Configuration")
    EmailConf.Load -1    ' Set CDO Source Defaults
     Set EmailFields = EmailConf.Fields
     With EmailFields
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "My-Gmail-Address@gmail.com"
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "My-G-Mail-Pass"
        .Update
     End With
With Sheet1

    Attach = .Range("F11").Value 'Attachment Link
    LastRow = .Range("E999").End(xlUp).Row 'Get Last Row Of Table

    For ContactRow = 14 To LastRow
        Subj = .Range("F3").Value 'Email Subject
        Mess = .Range("F4").Value 'Email Message
        If .Range("L" & ContactRow).Value <> Empty Then GoTo NextRow
        LastName = .Range("E" & ContactRow).Value
        FirstName = .Range("F" & ContactRow).Value
        Email = .Range("K" & ContactRow).Value
        Subj = Replace(Replace(Subj, "#FirstName#", FirstName), "#LastName#", LastName)
        Mess = Replace(Replace(Mess, "#FirstName#", FirstName), "#LastName#", LastName)

        With EmailMsg
            Set .Configuration = EmailConf
            .To = Email
            .CC = ""
            .BCC = ""
            .From = """info"" <info@mail.ge>"
            .Subject = Subj
             If Attach <> Empty Then .AddAttachment Attach
            .TextBody = Mess
            .Send
        End With
        SentCounter = SentCounter + 1
        .Range("L" & ContactRow).Value = Now 'Set Send Date & Time
NextRow:
    Next ContactRow

      'Cleanup
    Set EmailMsg = Nothing
    Set EmailConf = Nothing
    Set EmailFields = Nothing
End With
MsgBox SentCounter & " Emails have been sent"
End Sub
...