我创建了一个宏,可以自动将当前工作簿上传到sharepoint触发宏。 宏成功,将文件上传到映射到驱动器的sharepoint文件夹。
但是,如果在时间之前创建SharePoint文件夹,则宏仅成功。例如。可能提前1天。
如果新创建了文件夹,则无法以Sorry there's no such folder
的形式上传到该文件夹。
如果我转到窗口浏览器上的驱动器,我将能够看到新创建的文件夹。 我还尝试复制msg框中显示的文件路径并输入window explorer,它会将我引导到没有问题的文件夹。
有没有办法可以加快这个过程,为什么会这样?
宏观IF声明
If Dir(spPath) = "" Then
MsgBox "Sorry there's no such folder. Folder Path: " & vbNewLine & vbNewLine & spPath & ""
Call UnMapDrive(drive)
Exit Sub
ElseIf Not Dir(spPath & fileName) = "" Then
MsgBox("File Already Exist!!!")
ElseIf Dir(spPath & fileName) = "" Then
FolderCreate (path)
ThisWorkbook.SaveCopyAs copyPath & fileName
Call FileCopy(path & fileName, spPath & fileName)
MsgBox "File Successfully uploaded to SharePoint."
Kill (path) & "*.*"
RmDir path
Call UnMapDrive(drive)
End If
答案 0 :(得分:1)
更改
If Dir(spPath) = "" Then
到
If Dir(spPath, vbDirectory) = "" Then
在有人将文件放入目录之前(可能是创建目录后的第二天),您的代码在那里看不到任何文件(因为没有任何文件)。通过添加vbDirectory
,它将查找目录本身。