使用Dir循环的Excel VBA UpdateLinks

时间:2014-01-09 18:14:39

标签: excel vba sharepoint excel-vba

当我运行以下dir循环时,打开的文件会提示更新链接,即使代码说要更新它们。有谁知道为什么我仍然被提示更新?我感觉它与我的目录是sharepoint相关。

Sub OpenProjectFiles()

Dim sFile As String
Dim sPath As String

sPath = Application.ActiveWorkbook.Path
sPath = Replace(sPath, "/", "\")
sPath = Replace(sPath, "http:", "")

sFile = Dir(sPath & "\FY*.xls")     

Do While Len(sFile) > 0
    On Error Resume Next
    Workbooks.CheckOut FileName:=sPath & "\" & sFile
    Workbooks.Open FileName:=sPath & "\" & sFile, UpdateLinks:=3
    sFile = Dir
Loop

End Sub

1 个答案:

答案 0 :(得分:0)

我实际上想出了我自己的问题,如下所述。 然而如果有更好或更快的方式来循环播放这些文件,我会很高兴。目前,查找,签出,打开和更新链接大约需要6秒钟 - 更新链接并不需要很长时间,因为通常没有更新的信息。由于这个例程通常会打开大约10-15个文件,所以几乎需要2分钟才能完成。

答案:我意识到代码实际上是在更新链接,但由于某种原因,提示仍然弹出。所以我只是禁用了提示:

Application.AskToUpdateLinks = False