Ler em inglês

Compartilhar via


Objeto Sync (Office)

A propriedade Sync do objeto Document no Microsoft Word, do objeto Workbook no Microsoft Excel e do objeto Presentation no Microsoft PowerPoint retorna um objeto Sync.

Observação

A partir do Microsoft Office 2010, este objeto ou membro foi preterido e não deve ser usado.

Comentários

Use o objeto Sync para gerenciar a sincronização das cópias locais e de servidor de um documento compartilhado armazenado em um site do SharePoint. A propriedade Status retorna informações importantes sobre o estado atual da sincronização. Use o método GetUpdate para atualizar o status de sincronização. Use as propriedades LastSyncTime, ErrorType e WorkspaceLastChangedBy para retornar informações adicionais.

Consulte a propriedade Status para obter informações adicionais sobre as diferenças e conflitos que podem existir entre as cópias locais e de servidor de documentos compartilhados.

Use o método PutUpdate para salvar alterações locais no servidor. Feche e reabra o documento para recuperar a versão mais recente do servidor quando nenhuma alteração local são feitas. Use o método ResolveConflict para resolver diferenças entre a cópias local e do servidor ou o método OpenVersion para abrir uma versão diferente junto com a versão local aberta no momento do documento.

Os métodos GetUpdate, PutUpdate e ResolveConflict do objeto Sync não retornam códigos de status porque completam suas tarefas de forma assíncrona. O objeto Sync fornece informações de status importantes por meio de um único evento, o desenvolvedor pode acessar através os seguintes eventos de aplicativo específico:

  • No Word, por meio do evento Sync do objeto Document ou do evento DocumentSync do objeto Application .

  • No Excel, por meio do evento Sync do objeto Workbook ou do evento WorkbookSync do objeto Application .

  • No Microsoft PowerPoint, por meio do evento PresentationSync do objeto Application .

O evento Sync descrito acima retorna um valor msoSyncEventType.

O modelo de objeto de sincronização está disponível se o compartilhamento e a sincronização estão habilitados ou desabilitados no documento ativo. A propriedade Sync dos objetos de documento, pasta de trabalho e a apresentação não retorna nada quando o documento ativo não é compartilhado ou a sincronização não está habilitada. Use a propriedade Status para determinar se o documento está compartilhado e se a sincronização está habilitada.

Nem todos os problemas de sincronização de documento geram erros interceptáveis de tempo de execução. Depois de usar os métodos do objeto Sync , é uma boa ideia verificar a propriedade Status ; se a propriedade Status for msoSyncStatusError, verifique a propriedade ErrorType para obter informações adicionais sobre o tipo de erro que ocorreu.

Em muitas circunstâncias, a melhor maneira de resolver uma condição de erro é chamar o método GetUpdate. Por exemplo, se uma chamada para PutUpdate resultados em uma condição de erro, uma chamada para GetUpdate redefinirá o status msoSyncStatusLocalChanges.

Exemplo

O exemplo a seguir demonstra vários métodos do objeto Sync com base no status do documento ativo.

Dim objSync As Office.Sync 
    Dim strStatus As String 
    Set objSync = ActiveDocument.Sync 
    If objSync.Status > msoSyncStatusNoSharedWorkspace Then 
        Select Case objSync.Status 
            Case msoSyncStatusConflict 
                objSync.ResolveConflict msoSyncConflictMerge 
                ActiveDocument.Save 
                objSync.ResolveConflict msoSyncConflictClientWins 
                strStatus = "Conflict resolved by merging changes." 
            Case msoSyncStatusError 
                strStatus = "Last error type: " & objSync.ErrorType 
            Case msoSyncStatusLatest 
                strStatus = "Document copies already in sync." 
            Case msoSyncStatusLocalChanges 
                objSync.PutUpdate 
                strStatus = "Local changes saved to server." 
            Case msoSyncStatusNewerAvailable 
                objSync.GetUpdate 
                strStatus = "Local copy updated from server." 
            Case msoSyncStatusSuspended 
                objSync.Unsuspend 
                strStatus = "Synchronization resumed." 
        End Select 
    Else 
        strStatus = "Not a shared workspace document." 
    End If 
    MsgBox strStatus, vbInformation + vbOKOnly, "Sync Information" 
    Set objSync = Nothing

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.