gpt4 book ai didi

VBA - 如何打开和使用存储在 Sharepoint Online (Office365) 上的工作簿/文档

转载 作者:行者123 更新时间:2023-12-05 01:05:15 34 4
gpt4 key购买 nike

我有一个 Excel-VBA 应用程序可以打开并读取另一个工作簿和一个 Word 文档。路径和文件名存储在工作表字段中。

目前,该应用程序从私有(private)域 Sharepoint 打开文件。我们迁移到 Office365。我在调整代码时遇到问题。当存储在 Sharepoint365 上时,我不了解如何管理(保留和使用)对 office 文件的引用。链接是动态的吗?他们应该如何通过 VBA 访问?身份验证呢?

当我尝试用 Office365 URL 简单地替换本地私有(private) Sharepoint 文档/工作簿的当前 URL 时,VBA 方法成功打开了文件,但它们的内容不可用(我得到空白文档)。

我查看了支持和论坛,但找不到有关此事的全面信息。我应该使用 REST API 吗?如果是这样,如何?任何人都可以为新手指出或写下一步一步的解释吗?

代码很简单:

1- 对于 Excel 工作簿(要做:打开并在范围内搜索;问题 wkb 为空白)

[...]

Set bookURLs = Workbooks.Open(fileName)
Set searchRange = bookURLs.Worksheets(1).Columns(1)

[...]

2- 对于 Word 文档(要执行的操作:使用书签打开和搜索;问题文档为空白)

[...]

Set appWord = New Word.Application
With appWord
Set docTarget = .Documents.Open(fileName)
docTarget.Bookmarks([...]).Range.Copy

[...]

最佳答案

找到了对我有用的东西......

原来是Sharepoint Online使用的URL格式有问题。当通过“复制链接”获得链接时,它包含有关文件类型的信息和将授予链接持有者的访问权限。它还包括文件的 GUID 而不是路径和文件名。我需要的编程访问是一种“老式”链接格式。有一种方法可以获得后者:显示文件的版本历史并将 URL 复制到最新版本。我的旧 VBA 编码将接受此 URL。

(我还注意到,如果文件是通过 Ms-Teams 共享的;Teams 中的用户界面将提供 2 种不同的格式,可以直接从文件资源管理器中复制。)

我的问题解决了。如果有人知道得更多——例如,一种在 VBA 中使用带有 GUID 的 URL 的方法;那么任何额外的知识都会很好!

关于VBA - 如何打开和使用存储在 Sharepoint Online (Office365) 上的工作簿/文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55581758/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com