首页 > 解决方案 > 如果邮件主题由汉字组成,如何获取邮件主题?

问题描述

下面的代码显示一个消息框,其中包含每封传入邮件的邮件主题。它适用于拉丁字符,但不适用于中文字符。

邮件主题为'FW: Emailing: Copy of 小奶厅整机不同方案配置.xlsx'

但它会显示带有以下文本的消息框:

收到新消息

主题: FW: 电子邮件: ???????????.xlsx 的副本

Option Explicit
Private WithEvents inboxItems As Outlook.Items
Private Sub Application_Startup()
  Dim outlookApp As Outlook.Application
  Dim objectNS As Outlook.NameSpace

  Set outlookApp = Outlook.Application
  Set objectNS = outlookApp.GetNamespace("MAPI")


  Set inboxItems = objectNS.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub inboxItems_ItemAdd(ByVal Item As Object)
On Error GoTo ErrorHandler
Dim Msg As Outlook.MailItem
Dim MessageInfo
Dim Result
If TypeName(Item) = "MailItem" Then
        MessageInfo = "Subject : " & Item.Subject & vbCrLf
    Result = MsgBox(MessageInfo, vbOKOnly, "New Message Received")
End If
ExitNewItem:
    Exit Sub
ErrorHandler:
    MsgBox Err.Number & " - " & Err.Description
    Resume ExitNewItem
End Sub

标签: vbaoutlook

解决方案


推荐阅读