Hello Experts,
I am currently using this script to create folder by sender name..I want to create folder and move message according to Recpient name but for some messages I have multiple recipients.
can anyone help or give me a way to do so.
thanks
Sub FileBySender(olkMessage As MailItem)
Dim olkRootFolder As Outlook.MAPIFolder, _
olkSenderFolder As Outlook.MAPIFolder
'Change the folder path on the following line as needed
Set olkRootFolder = OpenMAPIFolder("\Mailbox - Me\Inbox")
On Error Resume Next
Set olkSenderFolder = olkRootFolder.Folders.Item
(olkMessag
e.SenderNa
me)
On Error GoTo 0
If TypeName(olkSenderFolder) = "Nothing" Then
Set olkSenderFolder = olkRootFolder.Folders.Add(
olkMessage
.SenderNam
e)
End If
olkMessage.Move olkSenderFolder
Set olkSenderFolder = Nothing
Set olkRootFolder = Nothing
End Sub
'Credit where credit is due.
'The code below is not mine. I found it somewhere on the internet but do
'not remember where or who the author is. The original author(s) deserves all
'the credit for these functions.
Function OpenMAPIFolder(szPath)
Dim app, ns, flr, szDir, i
Set flr = Nothing
Set app = CreateObject("Outlook.Appl
ication")
If Left(szPath, Len("\")) = "\" Then
szPath = Mid(szPath, Len("\") + 1)
Else
Set flr = app.ActiveExplorer.Current
Folder
End If
While szPath <> ""
i = InStr(szPath, "\")
If i Then
szDir = Left(szPath, i - 1)
szPath = Mid(szPath, i + Len("\"))
Else
szDir = szPath
szPath = ""
End If
If IsNothing(flr) Then
Set ns = app.GetNamespace("MAPI")
Set flr = ns.Folders(szDir)
Else
Set flr = flr.Folders(szDir)
End If
Wend
Set OpenMAPIFolder = flr
End Function
Function IsNothing(obj)
If TypeName(obj) = "Nothing" Then
IsNothing = True
Else
IsNothing = False
End If
End Function
Start Free Trial