У меня есть подпись электронной почты в формате HTML. Это не показывало все время, потому что иногда люди отвечают простым текстом. Так что мои ответы также в виде простого текста.

Поэтому в интернете я нашел макрос, который отправляет все мои письма в HTML. Очевидно, вы не должны этого делать, но, поскольку я отправляю все новые электронные письма в формате HTML, я не понимаю, почему нет.

Однако теперь, вместо того, чтобы быть простым текстом, они являются HTML, но всегда в Times New Roman, и подпись не показывает логотип, только текст, но не отформатированный. Кто-нибудь знает, как решить эту проблему?

заранее спасибо

1 ответ1

1

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

http://www.howto-outlook.com/howto/replyinhtml.htm

Sub ForceReplyInHTML()

    '=================================================================
    'Description: Outlook macro to reply to a message in HTML
    '             regardless of the current message format.
    '             The reply will use your HTML signature as well.
    '
    'author : Robert Sparnaaij
    'version: 1.0
    'website: http://www.howto-outlook.com/howto/replyinhtml.htm
    '=================================================================

        Dim objOL As Outlook.Application
        Dim objSelection As Outlook.Selection
        Dim objItem As Object
        Set objOL = Outlook.Application

        'Get the selected item
        Select Case TypeName(objOL.ActiveWindow)
            Case "Explorer"
                Set objSelection = objOL.ActiveExplorer.Selection
                If objSelection.Count > 0 Then
                    Set objItem = objSelection.Item(1)
                Else
                    Result = MsgBox("No item selected. " & _
                                "Please make a selection first.", _
                                vbCritical, "Reply in HTML")
                    Exit Sub
                End If

            Case "Inspector"
                Set objItem = objOL.ActiveInspector.CurrentItem

            Case Else
                Result = MsgBox("Unsupported Window type." & _
                            vbNewLine & "Please make a selection" & _
                            " or open an item first.", _
                            vbCritical, "Reply in HTML")
                Exit Sub
        End Select

        Dim olMsg As Outlook.MailItem
        Dim olMsgReply As Outlook.MailItem
        Dim IsPlainText As Boolean

        'Change the message format and reply
        If objItem.Class = olMail Then
            Set olMsg = objItem
            If olMsg.BodyFormat = olFormatPlain Then
                IsPlainText = True
            End If
            olMsg.BodyFormat = olFormatHTML
            Set olMsgReply = olMsg.Reply
            If IsPlainText = True Then
                olMsg.BodyFormat = olFormatPlain
            End If
            olMsg.Close (olSave)
            olMsgReply.Display

        'Selected item isn't a mail item
        Else
            Result = MsgBox("No message item selected. " & _
                        "Please make a selection first.", _
                        vbCritical, "Reply in HTML")
            Exit Sub
        End If

        'Cleanup
        Set objOL = Nothing
        Set objItem = Nothing
        Set objSelection = Nothing
        Set olMsg = Nothing
        Set olMsgReply = Nothing

    End Sub

Я воссоздал макрос три раза, один для пересылки, один для ответа, один для ответа всем, я переименовал их в верхний Sub ForceReplyInHTML чтобы создать три различных макроса.

Я также использовал соответствующие статьи в этой ссылке, чтобы создать себе кнопки и подписать свои макросы. На последнем этапе я использовал кнопку «Изменить», чтобы изменить значки моих макросов, чтобы было легче запомнить, какой из них и какой.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .