【发布时间】:2018-01-10 08:53:47
【问题描述】:
我们的系统正在转向云存储,因此我们的个人驱动器很快就会消失,因此我需要将应用程序保存到用户 OneDrives。
这对我来说是一个新领域,我在网上阅读的内容没有多大意义。
这是我目前所拥有的:
Set FileSystemObject = CreateObject("Scripting.FileSystemObject")
Dim FileExistsbol As Boolean
Dim stFileName As String
Dim CopyFrom As String
Dim CopyTo As String
stFileName = "C:\Users\" & Environ("UserName") & "\OneDrive - Company"
stFileName = Trim(stFileName)
FileExistsbol = dir(stFileName) <> vbNullString
If FileExistsbol Then
Kill stFileName
CopyFrom = "C:\Test File.txt"
CopyTo = "C:\Users\" & Environ("UserName") & "\OneDrive - Company"
FileSystemObject.CopyFile CopyFrom, CopyTo
Else
CopyFrom = "C:\Test File.txt"
CopyTo = "C:\Users\" & Environ("UserName") & "\OneDrive - Company"
FileSystemObject.CopyFile CopyFrom, CopyTo
End If
此代码以前用于复制到本地驱动器,但相信它在这种情况下不起作用,因为它试图复制到的新驱动器是基于网络的。
错误: 实际上没有填充错误
感谢任何帮助
【问题讨论】:
-
也许您可以映射 OneDrive 文件夹,使其充当本地驱动器。
-
使用 VBA 可以做到吗?否则会有很多融合器必须手动完成
-
应该可以,是的。确切的方法取决于您的 Windows 版本等,但可能最简单的方法是 [通过 Google 搜索] 如何通过命令提示符将驱动器号映射到 OneDrive,然后使用
Shell执行如果/必要时发出命令。 -
我想你的答案就在这里:stackoverflow.com/a/42840430/78522如果你能得到UNC(这是一个HTTPS地址)就不需要映射
标签: ms-access vba ms-access-2010