UDF

Cerrado
fer95 - 31 may 2022 a las 22:25
Hola, como puedo programar una UDF que trabaje con rangos?

Las entradas de la UDF son: ingresos y años. Debe tomar el logaritmo base 10 de los ingresos y con esos nuevos valores calcular la pendiente utilizando los años. Finalmente, debe devolver el valor: 10 ^ pendiente - 1.

He estado tratando de dar con la solución con el siguiente código pero me da error #¡VALOR!.

Public Function CAGR_Log10(revenues As Range, years As Range)
Dim celda As Range
Dim log As Range
Dim pendiente As Double

For Each celda In revenues
log = Application.WorksheetFunction.Log10(celda.Value)
Next celda

pendiente = Application.WorksheetFunction.Slope(log, years)

CAGR_Log10 = 10 ^ pendiente - 1

End Function

Entonces, lo que necesito es, por ejemplo: dado revenues = 1,2,3,4,5.... y years = 2010, 2011, 2012..., tomar log = log(1), log(2), log(3), log(4), log(5)... y luego con log y years calcular la pendiente. Es decir, primero requiero modificar todos los valores del rango revenues tomando su logaritmo en base 10.





Configuración: Windows / Chrome 101.0.4951.67