excel - Sharepoint 和 Excel VBA 集成失败
问题描述
尝试通过 Excel 中的 VBA 从 SharePoint 检索文件属性时遇到问题。(我不能发布工作簿,但下面的代码就足够了)。
有问题的代码:
Private Sub CheckCheckOutStatus()
Debug.Print Application.Workbooks.CanCheckOut("http://sp.mySharepointDomain.co.uk/myFolderPath/myFile.xlsb")
End Sub
问题是,在我的客户端 PC 上,无论文件是否已签出,此语句始终返回 false(他们能够手动签出文件,因此这不是文件权限问题)。
经过进一步调查,似乎我的特定计算机能够从该代码中获得正确的值,而其他计算机都不能。还值得一提的是,我的客户端和我测试过的所有 PC/用户都在同一个共享网络上,所以我们都应该安装相同的包。
通过排除的过程,我们推断它与我的特定计算机(无论谁登录它,它是PC本身)有关,它能够正确使用此方法。
我的问题是对所有的专家:
是否有任何客户端或本地包/安装/权限可以启用或禁用对 SharePoint 中属性的编程访问?
感谢您抽出宝贵时间阅读本文,并提前感谢您提出的任何建议!
解决方案
我无法对此进行测试,因为我没有安装 SharePoint,但这看起来是正确的......
Sub test()
Dim docCheckOut As String
docCheckOut = "Filepath&name"
Call UseCheckOut(docCheckOut)
End Sub
Sub UseCheckOut(docCheckOut As String)
' Determine if workbook can be checked out.
If Workbooks.CanCheckOut(docCheckOut) = True Then
Workbooks.CheckOut docCheckOut
Else
MsgBox "Unable to check out this document at this time."
End If
End Sub
推荐阅读
- bootstrap-carousel - Bootstrap Carousel Controls 响应但需要它们更精确
- java - 未找到 Hibernate 搜索类异常 Lucene Field$TermVector
- excel - Excel 保护行和列但允许单元格编辑
- xml - Android工作室,xml设计,布局设计
- python - 对存储在字典中的不同形状的 numpy 数组的所有元素求和
- javascript - 如何读取使用 NodeJS 上传的任何文件的 mimetype
- angular - 为什么我的 Angular 6 页面无法加载
- c++ - 使用 void 指针从 c 函数调用模板化成员
- javascript - jquery 多语种语言切换器 js
- sql - SQL 三表连接