VBA错误1004-ChangeFileAccess方法失败-共享点上的文件

时间:2018-08-31 15:48:05

标签: excel vba sharepoint

我正在修复某个同事编写的一些代码,并且遇到了这一障碍,即从Sharepoint打开Excel文档,并运行ChangeFileAccess方法将其更改为“读/写”。该方法失败,错误代码为1004。文件将打开,因此到那时为止的所有内容都可以使用。 我不明白为什么它行不通,我希望有人能比我提供更多知识! 为了匿名起见,我删除了文件路径和文档名称。
我使用的是Office 365,以下代码有问题:

Dim ObjFileA, ObjfileB As File
FilePathA = "filepath" & fileName
Set FSO = CreateObject("Scripting.FileSystemObject")
Set App = CreateObject("Excel.Application")

Set ObjFileA = FSO.GetFile(FilePathA)
Set wbA = Workbooks.Open(ObjFileA, False, False)

wbA.Activate
wbA.ChangeFileAccess (xlReadWrite)
Set wbA = Workbooks(fileName)

1 个答案:

答案 0 :(得分:1)

您的文件已经已以读写方式打开吗?

我刚刚遇到了与您所描述的问题类似的问题(更改访问方法时出现Err 1004,但是在我的情况下,我试图将访问权限更改为对已经为只读文件的只读访问。)

经过一些测试,每次尝试调用wkbk.ChangeFileAccess来“更改”访问类型使其与当前访问类型相同时,都会出现错误。

如果您发现工作簿可能已经被读写,那么我建议您更改为:

If wbA.ReadOnly then wbA.ChangeFileAccess (xlReadWrite)