vba - Save only emails of today -
i creating macro in outlook 2010 save emails specified folder. emails saved folder created macro. problem in accounting when receive emails on weekend or off business hours. noticed when receive emails on weekend , reopen outlook on monday, macro runs fine , needs do, emails received on weekend put monday folder. how can bypass problem. if receive email on saturday, how can have macro create folder saturday well? code working on.
public sub savemsgs(item outlook.mailitem) dim spath string dim dtdate date dim sname string dim enviro string dim ssender string dim strfolder string dim strnewfolder string dim save_to_folder string enviro = cstr(environ("userprofile")) sname = item.subject replacecharsforfilename sname, "_" ssender = item.sender dtdate = item.receivedtime sname = ssender & " - " & sname & ".msg" strnewfolder = format(date, "mm-dd-yyyy") strfolder = "c:\it documents\" & strnewfolder & "\" if len(dir(strfolder, vbdirectory)) = 0 mkdir (strfolder) end if save_to_folder = strfolder item.saveas save_to_folder & sname, olmsg end sub private sub replacecharsforfilename(sname string, _ schr string _) sname = replace(sname, "/", schr) sname = replace(sname, "\", schr) sname = replace(sname, ":", schr) sname = replace(sname, "?", schr) sname = replace(sname, chr(34), schr) sname = replace(sname, "<", schr) sname = replace(sname, ">", schr) sname = replace(sname, "|", schr) end sub
seems intended use item.receivedtime create folder, after pull value dtdate, never gets used.
perhaps try following instead:
strnewfolder = format(dtdate, "mm-dd-yyyy") ^^
Comments
Post a Comment