Sync.ResolveConflict 方法 (Office)

解决共享文档的本地副本和服务器副本之间的冲突。

注意

自 Microsoft Office 2010 开始,此对象或成员已弃用,不应再行使用。

语法

表达式ResolveConflict (SyncConflictResolution)

表达 一个代表 Sync 对象的变量。

参数

名称 必需/可选 数据类型 说明
SyncConflictResolution 必需 MsoSyncConflictResolutionType 指定解决冲突的方式。

备注

使用 ResolveConflict 方法可解决活动文档的本地副本和服务器副本之间的差异。 使用 msoSyncConflictMerge 选项(不适用于 Microsoft Excel 工作簿)可以合并各个文档的更改。 通过 msoSyncConflictClientWins 选项使用本地更改替换服务器副本,或者通过 msoSyncConflictServerWins 选项使用更改的服务器副本替换本地副本。

msoSyncConflictMerge 选项将对服务器副本所做的更改合并到本地副本中,但实际上并没有解决冲突。 若要解决与合并更改获胜的冲突,必须在合并更改后保存活动文档,然后使用 msoSyncConflictClientWins 选项再次调用 ResolveConflict 方法。

如果客户端未检测出对共享文档服务器副本的最新更改,ResolveConflict 方法可能会遇到冲突条件。 在调用 ResolveConflict 之前先调用 GetUpdate 方法可刷新服务器副本的状态并检测可能的冲突。

如果本地文档有未保存的更改或者在文档的两个副本之间不存在冲突,ResolveConflict 方法就会发生运行时错误。

不是所有文档同步问题都会引发可捕获的运行时错误。 使用 Sync 对象执行作后,最好检查 Status 属性;如果 Status 属性为 msoSyncStatusError,检查 ErrorType 属性以获取有关所发生错误类型的其他信息。

示例

下面的示例试图通过合并更改来解决活动文档的本地副本和服务器副本之间的冲突。

    Dim objSync As Office.Sync 
    Dim strStatus As String 
    Set objSync = ActiveDocument.Sync 
    If objSync.Status = msoSyncStatusConflict Then 
        objSync.ResolveConflict msoSyncConflictMerge 
        ActiveDocument.Save 
        objSync.ResolveConflict msoSyncConflictClientWins 
        strStatus = "Conflict resolved by merging changes." 
        MsgBox strStatus, vbInformation + vbOKOnly, "Sync Information" 
    End If 
    Set objSync = Nothing 

另请参阅

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。