|
楼主 |
发表于 2014-3-25 11:45
|
显示全部楼层
Zipall 发表于 2014-3-25 10:14
保存附件前用dir(路径+文件名)检查同名文件是否已存在,若已存在则修改当前附件名称.
DIR啊,我不太懂,附上代码,能帮忙修改下吗?有时附件名字重复达到4个以上的。- Sub 下载电邮附件()
- On Error Resume Next
-
- Dim olApp As New Outlook.Application
- Dim nmsName As Outlook.Namespace
- Dim vItem As Object
- Set nmsName = olApp.GetNamespace("MAPI")
- Set myFolder = nmsName.GetDefaultFolder(olFolderInbox)
- Set fldFolder = myFolder.Folders("Current")
-
- For Each vItem In fldFolder.Items
-
-
- MyArray = Split(Attachment.DisplayName, ".", -1, 1)
- strname = MyArray(0) & Format(mymailitem.CreationTime, "_yyyymmdd_hhnnss") & "." & MyArray(1)
- strname = MyArray(0) & Format(mymailitem.ReceivedTime, "_yyyymmdd_hhnn") & "." & MyArray(1)
- strname = Right(MyArray(0), InStr(MyArray(0), "G1m")) & "." & MyArray(1)
- If (fso.FileExists(filefolder & strname) = False) Then
- temp = i & " " & mymailitem.Subject & " " & mymailitem.CreationTime & " " & Attachment.DisplayName
- Attachment.SaveAsFile filefolder & strname
- temp = mymailitem.CreationTime & " " & filefolder & strname
- f.Writeline temp
-
- msg = msg & temp & vbCrLf
- wcount = wcount + 1
- End If
-
- For Each att In vItem.Attachments
- att.SaveAsFile "C:\Users\XXX\Documents" & att.Filename
-
- Next
-
- Next
-
- Set fldFolder = Nothing
- Set nmsName = Nothing
- End Sub
复制代码 |
|