Como posso criar uma função reutilizável no Excel 2007?

4

Como posso criar uma função / fórmula resuível que posso usar em fórmulas em uma planilha? Em particular, eu preciso de uma fórmula muito simples do DateDiff e gostaria de uma maneira de encapsular essa função:

=(((HOUR(B3) * 60) * 60) + (MINUTE(B3) * 60) + SECOND(B3)) - (((HOUR(A3) * 60) * 60) + (MINUTE(A3) * 60) + SECOND(A3))

(Agradecimentos a Phil Winstanley )

    
por C. Ross 22.09.2009 / 16:48

2 respostas

6

Este link descreve completamente como fazer isso ... as instruções foram enumeradas abaixo:

  1. Abra uma nova pasta de trabalho.
  2. Entre no VBA (pressione Alt + F11)
  3. Inserir um novo módulo (Inserir > Módulo)
  4. Insira a função definida pelo usuário do Excel (UDF) no VBA
  5. Saia do VBA (pressione Alt + Q)
  6. Use as funções (na planilha) - Elas aparecerão na caixa de diálogo Colar Função, Shift + F3, na categoria "Definido pelo Usuário")

É para o Excel-2003, mas o processo é o mesmo

Você cria um módulo VBA com uma função, digamos NEWfunction,
então referencie-o na célula, =NEWfunction("A1") .

    
por 22.09.2009 / 17:03
2

Enquanto um UDF VBA é provavelmente o melhor caminho a percorrer. A fórmula que você tem poderia ser simplificada para

=MOD((B3-A3)*86400,86400)

por causa da maneira como o Excel armazena Data / Horários como duplos

    
por 22.09.2009 / 22:28