Valores voláteis nas funções
As funções voláteis são funções nas quais o valor é alterado sempre que a célula é calculada. O valor pode ser alterado mesmo que nenhum dos argumentos da função seja alterado. Essas funções são recalculadas sempre que o Excel recalcular. Por exemplo, imagine uma célula que chame a função NOW
. Toda vez que NOW
for chamado, retornará automaticamente a data e a hora atuais.
Importante
Observe que as funções personalizadas do Excel estão disponíveis nas plataformas a seguir.
- Office na Web
- Office no Windows
- Assinatura do Microsoft 365
- revenda perpétua do Office 2016 e posterior
- Office 2021 perpétuas licenciadas em volume e posteriores
- Office no Mac
As funções personalizadas do Excel não são atualmente suportadas no seguinte:
- Office no iPad
- versões perpétuas licenciadas em volume do Office 2019 ou anterior no Windows
Observação
O manifesto unificado do Microsoft 365 não suporta atualmente projetos de funções personalizadas. Tem de utilizar o manifesto apenas de suplemento para projetos de funções personalizadas. Para obter mais informações, veja Manifesto de Suplementos do Office.
O Excel contém várias funções voláteis internas, como RAND
e TODAY
. Para ver uma lista mais completa de funções voláteis do Excel, confira Funções voláteis e não voláteis.
As funções personalizadas permitem-lhe criar as suas próprias funções voláteis, o que pode ser útil ao processar datas, horas, números aleatórios e modelação. Por exemplo, as simulações monte Carlo requerem a geração de entradas aleatórias para determinar uma solução ideal.
Se optar por gerar automaticamente o ficheiro JSON, declare uma função volátil com a etiqueta @volatile
de comentário JSDoc . Para obter mais informações sobre a autogeração, veja Autogenerate JSON metadata for custom functions (Gerar automaticamente metadados JSON para funções personalizadas).
Segue-se um exemplo de uma função personalizada volátil, que simula a implementação de dados de seis lados.
/**
* Simulates rolling a 6-sided dice.
* @customfunction
* @volatile
*/
function roll6sided() {
return Math.floor(Math.random() * 6) + 1;
}
Próximas etapas
- Saiba mais sobre as opções de parâmetros de funções personalizadas.