Macro e função, em termos de código, são muito parecidos. Se vc sabe fazer macros, veja um exemplo de macro e a mesma como função:
3. Uma função que calcule a potência de xy?
Sub PotenciaXY_Macro()
Dim x As Double
Dim y As Double
Dim resultado As Double
x = Range("A1").Value
y = Range("A2").Value
resultado = x ^ y
Range("A3") = resultado
End Sub
Function PotenciaXY_Função(x As Double, y As Double) As Double
Application.Volatile 'não é necessário, apenas para garantir que a função vai sempre calcular
PotenciaXY_Função = x ^ y
End Function
Para esta função, use a sintaxe: =PotenciaXY_Função(x; y)
Veja que os elementos são os mesmoas, as diferenças básicas é que:
- Na macro, vc define as variáveis logo no início do código e carrega-as com os valores que quer;
- Na função, vc define as variáveis passam a ser os argumentos, mas seguem a mesma lógica.
- Na macro, vc define o que quer fazer com o resultado, nesse exemplo, mandei para a célula A3, mas poderia ser uma msgbox, etc;
- Na função, vc devolve o resultado para a própria função, e ele vai aparecer na célula (caso vc use a função como fórmula), ou no código (caso vc chame a função dentro de uma macro).
A partir deste, creio que vc pode prosseguir com os outros.
Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.
Gilmar
Postado : 20/03/2014 10:04 am