Forums Últimos mensajes - Powered by IBM
 

asignar a una variable una formula

22/01/2009 - 13:35 por guihe | Informe spam
Hola a todos!
¿se puede asignar una formula como la siguiente, que aparece en la
celda E1 a una variable?
Range("E1").FormulaR1C1 = "=SQRT(SUM(R7C4:R85C4)/COUNT(R7C4:R85C4))"

es decir, algo asi
variable.FormulaR1C1 = "=SQRT(SUM(R7C4:R85C4)/COUNT(R7C4:R85C4))"
es que necesito ese valor, pero no me interesa que esté escrito en
ninguna celda.
gracias,
guihe
 

Leer las respuestas

#1 Juan M
22/01/2009 - 16:00 | Informe spam
"guihe" escribió en el mensaje
news:
Hola a todos!
¿se puede asignar una formula como la siguiente, que aparece en la
celda E1 a una variable?
Range("E1").FormulaR1C1 = "=SQRT(SUM(R7C4:R85C4)/COUNT(R7C4:R85C4))"

es decir, algo asi
variable.FormulaR1C1 = "=SQRT(SUM(R7C4:R85C4)/COUNT(R7C4:R85C4))"
es que necesito ese valor, pero no me interesa que esté escrito en
ninguna celda.
gracias,
guihe

Hola guihe,

Tienes varias posibilidades para hacer eso,

1) escribir en una celda esa formula, asignarla a una variable adecuada y
luego borrar la celda:
Range("E1").FormulaR1C1 = "=SQRT(SUM(R7C4:R85C4)/COUNT(R7C4:R85C4))"
MiVariable=range("E1")
range("E1").clear
Esto es de lo peor que se puede hacer, pero da el resultado.
2) Puedes aplicar las fórmulas disponibles en vba/application para realizar
las operaciones
With Application.WorksheetFunction
mivariable = Sqr(.Sum(Range("A1:A20")) / .CountA("A1:A20"))
End With
3) Puedes programar completamente la solución en vba
con bucles y todo eso.

Disculpa por no emplear los mismos rangos que has empleado tu pero no me
gusta demasiado el estilo de referencias RC, y me encuentro más agusto con
la otra forma.

Un saludo,
Juan

Preguntas similares