来自SharePoint Online的Office 365 Workbooks.open打开空白文件

时间:2018-08-06 08:57:11

标签: excel vba excel-vba sharepoint

我们的公司在半年更新通道上使用Office 365 Pro Plus。最近,我们已经从版本1708更新到1803。

我们正在使用一些自动化宏,而不是从SharePoint在线租户中打开文件。自更新以来,现在每次调用Workbooks.open(“ https://xxxxxx.sharepoint.com/sites/.../xxx.xlsx”)都会提示输入O365用户名和密码,并且不要使用用作Excel帐户的用户名和密码。

它将打开一个“空白”工作簿(请参见屏幕截图): enter image description here

本地文档上的Workbooks.open()仍像以前一样工作,仅从SP Online打开文件会出现此问题。

我试图在计算机上切换到每月频道,但问题仍然存在。 使用链接手动打开文件有效。

这是我们正在使用的示例代码:

Sub Transfert_SST_Copy()

Dim Tbl As ListObject
Dim NewRow As ListRow
Dim Data As ListRow
Dim Wb As Workbook

Set Wb = Workbooks.Open(Filename:="https://xxxxx.sharepoint.com/:x:/r/sites/XXX/AMTB%20RFQ%20costing/00%20General/Overview%20RFQs/Cost%20computations%20simple%20overview/2018%20AMTB_Cost_computations_overview_simple.xlsm?d=w8929b5112ed7496bb25d82b0bfc472c5&csf=1&e=PADrRt", ReadOnly:=False)
' Here Excel opens a "Blank" Workbook, so everything after that is giving an error
Set Tbl = Range("CostCalcOverview").ListObject
Set NewRow = Tbl.ListRows.Add(AlwaysInsert:=True)

NewRow.Range.Offset(0, 1).Resize(1, ThisWorkbook.Worksheets("Transfert").Range("A275:AW275").Count).Value = ThisWorkbook.Worksheets("Transfert").Range("A275:AW275").Value

End Sub

1 个答案:

答案 0 :(得分:0)

嗨,我遇到了同样的问题-事情变得如此简单,这对我来说是个问题! 问题出在您的文件名链接上。

 Set Wb = Workbooks.Open(Filename:="https://xxxxx.sharepoint.com/:x:/r/sites/XXX/AMTB%20RFQ%20costing/00%20General/Overview%20RFQs/Cost%20computations%20simple%20overview/2018%20AMTB_Cost_computations_overview_simple.xlsm?d=w8929b5112ed7496bb25d82b0bfc472c5&csf=1&e=PADrRt", ReadOnly:=False)

当您单击“共享”或“复制链接”时,使用的文件名链接直接来自SharePoint,但是对我来说解决此问题的方法是实际在Desktop Excel中打开SharePoint文件。然后单击文件。然后,您会看到“信息”页面,其中显示了文件名-如果直接在文件名下方(显示“保护工作簿”的位置上方),则看起来像是面包屑链接(SharePoint的文件夹名以>>分隔)-点击该部分,然后点击“将路径复制到剪贴板”

以此替换代码中的“文件名”链接,它将起作用!