Pergunta

Eu tenho uma macro que atualiza todos os campos em um documento (o equivalente a fazer um F9 sobre os campos). Eu gostaria de disparar esta macro automaticamente quando o usuário salva o documento.

Em Opções posso selecionar "campos de atualização quando o documento é impresso", mas não é isso que eu quero. No editor de VBA Eu só parecem encontrar eventos para o evento Document_Open(), não o evento Document_Save().

É possível obter a macro ao fogo quando o usuário salva o documento?

Por favor nota:

  1. Este é Word 97. Sei que é possível em versões posteriores do Word
  2. Eu não quero substituir o padrão Salvar botão na barra de ferramentas com um botão para executar o meu macro personalizada. Substituindo o botão na barra de ferramentas aplica-se a todos os documentos e eu só quero que afetam este documento.

Para entender por que eu preciso disso, o documento contém um campo "SaveDate" e eu gostaria este campo para atualização na tela quando o usuário clicar em Salvar. Então, se você pode sugerir uma outra maneira de conseguir isso, então, que seria tão bom.

Foi útil?

Solução

Sim, fencliff está certo, você está sem sorte com Word 97.

Se uma atualização não é uma opção, a única coisa que vem à minha mente é polling tempo da última modificação do arquivo usando um timer. Eu sei que é feio, mas você não obter eventos e não há um comando do Word que você poderia substituir.

Outras dicas

Tanto quanto me lembro de Word 97, você está fora fresco de sorte. Os únicos eventos do documento em '97 foram abrir e fechar.

Eu não tenho Word 97 disponíveis, mas no Word 2000 + você pode definir um campo que lê uma propriedade de documento. Você pode verificar isso. No Word 2003 está sob Inserir> Campo ... e o que você está procurando é chamado SaveDate .

Edit: D'Uh. Você já sabia disso. Misunderstood seu problema. Desculpas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top