0

我正在编写一个将文件附件保存到文件夹的脚本。如果它们不存在,我想创建子文件夹。有没有一种快速的方法来做到这一点?本质上,我正在寻找以下方面的东西:

如果文件夹存在,则什么也不做。否则,创建文件夹。万一。

我知道这是一段愚蠢的 2 行代码,但非常感谢任何帮助!我在 Outlook.MailItem.Attachments 中使用 SaveAsFile 方法,所以也许有一种快速的方法可以使用另一个功能相同的函数?再次感谢!

以下是我当前脚本的摘录:

' 时间戳 dateFormat = Format(Now, "yyyy-mm-dd hh-mm ")

' Save folder
saveFolder = centrallocation & ticker & "\"

For Each objAtt In itm.Attachments
    ' File extension
    extension = Right(objAtt.FileName, Len(objAtt.FileName) - InStrRev(objAtt.FileName, "."))
    extension = LCase(extension)

    If extension = "xlsx" Or extension = "xls" Or extension = "xlsxm" Or extension = "xlsm" Then
        saveFolder = saveFolder & "\Model\"
        objAtt.SaveAsFile saveFolder & dateFormat & objAtt.DisplayName
    Else
        objAtt.SaveAsFile saveFolder & dateFormat & objAtt.DisplayName
    End If

    ' go to next attachment
    Set objAtt = Nothing
Next
4

1 回答 1

1

在保存文件之前调用它:

Sub CreateFolderIfMissing(path as String)

    Dim folderExists As Boolean
    folderExists = (Dir(path) <> "")

    If (folderExists) Then Exit Sub

    MkDir path
End Sub
于 2013-03-13T13:01:54.203 回答