Извлечь адрес электронной почты вместо имени электронной почты CC с помощью vbscript? - PullRequest
0 голосов
/ 03 июля 2019

Я пишу VBScript для извлечения CC из электронной почты.Когда я извлекаю копию, вместо адреса электронной почты, он показывает имя электронной почты человека.У меня была та же проблема, когда я извлекал адрес «от».Я проверил, является ли тип адреса электронной почты этого человека (.SenderEmailType) SMTP или EX, и смог выбрать адрес электронной почты вместо имени электронной почты.Я не знаю, как сделать то же самое для CC.Я проверил онлайн, написано, чтобы пройти через «Mailitems.Recipent».Я новичок в VBScript, я не уверен, как это сделать.В настоящее время я использую объект .CC для получения подробной информации.

Set Arg = WScript.Arguments
dim item1
dim objsubject 
dim intcount
Dim i 
dim savename 
dim vTextFile
dim filename 
dim extension
Dim t
Dim Itimestamp 
dim savefolder 
Dim vSenderEmailAddress
Dim vCcEmailAddress
Dim vFlagTextFileCreate


vFlagTextFileCreate = True
savefolder = "C:\Users\tgssupport\Documents\Automation Anywhere Files\Automation Anywhere\My Scripts\Retro Pricing\junk"
vTextFile = savefolder & "\File Report.txt"
vFlagExcelAttachmentFound = False
Set fso = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
Set olApp = GetObject(, "Outlook.Application")
If Err.Number <> 0 Then    'Could not get instance of Outlook, so create a new one
   Err.Clear
   Set olApp = CreateObject("Outlook.Application")
End If
on error goto 0
Set olns = olApp.GetNameSpace("MAPI")
olns.logon "Outlook",,False,True
'6 is for Inbox
Set objFolder = olns.GetDefaultFolder(6)
For each item1 in objFolder.Items

  if item1.Unread=true then
    objsubject = item1.subject
      vCcEmailAddress = item1.CC
      If item1.SenderEmailType = "SMTP" Then
               vSenderEmailAddress = item1.SenderEmailAddress
      ElseIf item1.SenderEmailType = "EX" Then
               vSenderEmailAddress = item1.Sender.GetExchangeUser.PrimarySmtpAddress
      End If 'If item1.SenderEmailType
      msgbox vCcEmailAddress.
      msgbox vSenderEmailAddress.
  end if 'if item1.Unread=true
Next
olns.logoff
Set olns  = Nothing
Set olApp = Nothing
WScript.Quit

Ответы [ 2 ]

1 голос
/ 03 июля 2019
With item1.Recipients
    For i = 1 To .Count
        If .Item(i).Type = OlMailRecipientType.olCC Then
            vCcEmailAddress = .Item(i).Address
            Exit For
        End If
    Next i
End With
0 голосов
/ 03 июля 2019
Set objFolder = olns.GetDefaultFolder(6)
For each item1 in objFolder.Items      
   For Each RecipientObject In item1.Recipients
      If RecipientObject.Type = 2 Then
      msgbox RecipientObject.Address
      End if
   Next
Next
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...