Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
O runtime partilhado só é suportado em algumas aplicações do Office. Para obter mais informações, confira Conjuntos de requisitos de tempo de execução compartilhados.
Pode configurar o seu Suplemento do Office para carregar e executar código assim que o documento for aberto. Isto é útil se precisar de registar processadores de eventos, pré-carregar dados para o painel de tarefas, sincronizar a IU ou executar outras tarefas antes de o suplemento estar visível.
Observação
A configuração é implementada com um método que o código chama no runtime. Isto significa que o suplemento não será executado na primeira vez que um utilizador abrir o documento. O suplemento tem de ser aberto manualmente pela primeira vez em qualquer documento. Após a execução do método, em Office.initialize, Office.onReady ou porque o utilizador utiliza um caminho de código que o executa; em seguida, sempre que o documento for reaberto, o suplemento é carregado imediatamente e qualquer código no Office.initialize método ou Office.onReady é executado.
Observação
Este artigo requer que o seu Suplemento do Office esteja configurado para utilizar um runtime partilhado. Para obter mais informações, consulte Configurar o seu Suplemento do Office para utilizar um runtime partilhado.
Configurar o suplemento para carregar quando o documento for aberto
O código seguinte configura o suplemento para carregar e começar a ser executado quando o documento é aberto.
Office.addin.setStartupBehavior(Office.StartupBehavior.load);
Observação
O setStartupBehavior método é assíncrono.
Colocar código de arranque em Office.initialize ou Office.onReady
Quando o suplemento estiver configurado para ser carregado no documento aberto, este será executado imediatamente. O Office.initialize processador de eventos será chamado. Coloque o código de arranque no Office.initialize processador de eventos ou Office.onReady .
O seguinte código de suplemento do Excel mostra como registar um processador de eventos para eventos de alteração a partir da folha de cálculo ativa. Se configurar o suplemento para carregar no documento aberto, este código registará o processador de eventos quando o documento for aberto. Pode processar eventos de alteração antes de o painel de tarefas ser aberto.
// This is called as soon as the document opens.
// Put your startup code here.
Office.initialize = () => {
// Add the event handler.
Excel.run(async context => {
let sheet = context.workbook.worksheets.getActiveWorksheet();
sheet.onChanged.add(onChange);
await context.sync();
console.log("A handler has been registered for the onChanged event.");
});
};
/**
* Handle the changed event from the worksheet.
*
* @param event The event information from Excel
*/
async function onChange(event) {
await Excel.run(async (context) => {
await context.sync();
console.log("Change type of event: " + event.changeType);
console.log("Address of event: " + event.address);
console.log("Source of event: " + event.source);
});
}
O seguinte código de suplemento do PowerPoint mostra como registar um processador de eventos para eventos de alteração de seleção a partir do documento do PowerPoint. Se configurar o suplemento para carregar no documento aberto, este código registará o processador de eventos quando o documento for aberto. Pode processar eventos de alteração antes de o painel de tarefas ser aberto.
// This is called as soon as the document opens.
// Put your startup code here.
Office.onReady(info => {
if (info.host === Office.HostType.PowerPoint) {
Office.context.document.addHandlerAsync(Office.EventType.DocumentSelectionChanged, onChange);
console.log("A handler has been registered for the onChanged event.");
}
});
/**
* Handle the changed event from the PowerPoint document.
*
* @param event The event information from PowerPoint
*/
async function onChange(event) {
console.log("Change type of event: " + event.type);
}
Configurar o suplemento sem comportamento de carregamento no documento aberto
Podem existir cenários em que pretende desativar o comportamento "executar no documento aberto". O código seguinte configura o suplemento para não iniciar quando o documento é aberto. Em vez disso, será iniciado quando o utilizador o envolver de alguma forma, como escolher um botão do friso ou abrir o painel de tarefas. Este código não tem qualquer efeito se o método não tiver sido chamado anteriormente no documento atual, com Office.StartupBehavior.load como o parâmetro .
Observação
Se o suplemento chamar o método, com Office.StartupBehavior.load como parâmetro, em Office.initialize ou Office.onReady, o comportamento é ativado novamente. Portanto, neste cenário, desativá-lo aplica-se apenas à próxima vez que o documento for aberto e não a todas as aberturas subsequentes.
Office.addin.setStartupBehavior(Office.StartupBehavior.none);
Obter o comportamento de carga atual
Poderão existir cenários em que o seu suplemento precisa de saber se está configurado para ser iniciado automaticamente da próxima vez que o documento atual for aberto. Para determinar qual é o comportamento de arranque atual, execute o seguinte método, que devolve um valor Office.StartupBehavior .
let behavior = await Office.addin.getStartupBehavior();
Confira também
- Configurar o seu Suplemento do Office para utilizar um runtime partilhado
- Partilhar dados e eventos entre funções personalizadas do Excel e o tutorial do painel de tarefas
- Trabalhar com eventos usando a API JavaScript do Excel
- Runtimes nos Suplementos do Office
- Gerir opções de confiança para Suplementos do Office