【发布时间】:2019-07-08 14:27:00
【问题描述】:
以下代码正在运行,但发生了一些事情,现在它挂了
Set DocVersions=Activeworkbook.DocumentLibraryVersions
我什至尝试过只有Dim 和Set 行的简单潜艇,它只是挂起。我还尝试删除对 Microsoft Office 16.0 对象库的引用。
甚至不知道还能尝试什么
Sub getVersions()
Dim DocVersions As DocumentLibraryVersions
Dim DVersion As DocumentLibraryVersion
Dim clipobj As New DataObject
Dim clipdata As String
Dim i As Integer
Set DocVersions = ActiveWorkbook.DocumentLibraryVersions
i = DocVersions.Count
For Each DVersion In DocVersions
i = i - 1
Debug.Print i
clipdata = clipdata & DVersion.Index & vbTab & _
DVersion.Modified & vbTab & _
DVersion.ModifiedBy & vbTab & _
DVersion.Comments & vbCr
Debug.Print "index " & DVersion.Index
Debug.Print "comment " & DVersion.Comments
'Debug.Print "creator " & DVersion.Creator
Debug.Print "Modified Date " & DVersion.Modified
Debug.Print "Modified By " & DVersion.ModifiedBy
' Debug.Print "application " & DVersion.Application
Next
Set DocVersions = Nothing
Set DVersion = Nothing
clipobj.SetText clipdata
clipobj.PutInClipboard
MsgBox "Version Info Placed on Clipboard"
End Sub
【问题讨论】:
-
您是否在 Excel 中尝试此操作?您遇到什么错误?
-
看起来此代码旨在与 非 Microsoft 库一起使用 -
DocumentLibraryVersion。对该库的引用已丢失(工具/参考),或者该库未安装在运行代码的机器上。既然您说您已经检查了参考,请确保已安装此库并且参考指向安装位置。 -
重读... 这应该在 SharePoint 中查找内容吗?是否有可能没有从 SharePoint 返回的答案,这就是它似乎挂起的原因?
-
库已安装。我已关闭并重新打开对 Microsoft Office 对象的引用。当它关闭时,DocumentLibraryVersions 不可用,当我重新打开它时,我认为它已“安装”。该文件位于 Sharepoint 上,并且 Sharepoint 在此代码之外工作正常。
-
只需阅读 Vityata 的问题......没有错误,它只是挂起,我必须杀死 excel 才能退出。
标签: excel vba sharepointdocumentlibrary