vba Excel - 如何检查SharePoint网站文件是否已打开

时间:2016-08-02 12:36:36

标签: excel vba excel-vba sharepoint

我已经在互联网上搜索了这个问题的答案,并继续遇到问题让它发挥作用。

我需要检查以下位置的文件是否打开/锁定,然后让代码等待15秒,然后再试一次。现在,如果其他人打开了该文件,则会打开一个对话框,询问我是否要打开只读,这是我不想要的。我尝试使用Application.DisplayAlerts = False来使消息不显示,但似乎没有效果。所以我有两个主要问题:

  1. 检查文件是否已打开并等待再次尝试。
  2. 停止打开要求以只读方式打开的对话框。
  3. Workbooks.Open文件名:= _                  " https://somecorporatewebsite/sites/TNKYWest/Engr/ASE%20Updates/Shared%20Documents/ASENW Updater.xlsx"

1 个答案:

答案 0 :(得分:0)

  1. 尝试这样的事情:
  2. 来自MSDN网站:     https://msdn.microsoft.com/en-us/library/office/ff193284.aspx

    Sub UseCanCheckOut(docCheckOut As String) 
    Dim docCheckout
    set docCheckout="File name to open"
    ' Determine if workbook can be checked out. 
    If Workbooks.CanCheckOut(Filename:=docCheckOut) = True Then 
    Workbooks.CheckOut (Filename:=docCheckOut) 
    Else 
    

    在MSDN网站上找到: https://msdn.microsoft.com/en-us/library/office/ff822851.aspx

    Application.Wait(Now + TimeValue("0:00:10")) 
    Workbooks.CheckOut (Filename:=docCheckOut) 'Try to check the file out again.
    End If 
    
    End Sub
    
    1. 本部分包含在

      如果workbooks.cancheckout(filename:= docCheckout)= true,那么第1部分中的workbooks.checkout'方法。