Inserta variable en fórmula de VB-Excel

Necesito insertar en código de Visual Basic para Excel una variables en una fórmula que selecciono de unas celdas cualquiera. Ejemplo de Código:
Dim var1, var2
var1 = rango("D7").Value
var2 = rango("F7").Value
Range("F1").Select
ActiveCell.FormulaR1C1 = _
"=R[7]C[-2]&""(""&TEXT((R[7]C[-2]*100)/R[7]C[3],""00,00"")&""%""&"")"""
Esto funciona, pero al sustituir R[7]C[-2] por var1 y R[7]C[3] por var2 no va, con tantas comillas me pierdo. Gracias, de antemano.

1 Respuesta

Respuesta
1
En lugar de usar los valores de las celdas d7 y f7, usa las filas y columnas de estas celdas. Con esos datos y el de la celda activa, podes reemplazar el 7, -2 y 3, por las restas correspondientes.
Acá va la solución :
Dim var1, var2
Dim f1, f2, c1, c2
Set var1 = Range("D7")
Set var2 = Range("F7")
Range("F1").Select
f1 = var1.Row - ActiveCell.Row
f2 = var2.Row - ActiveCell.Row
c1 = var1.Column - ActiveCell.Column
c2 = var2.Column - ActiveCell.Column
ActiveCell.FormulaR1C1 = "=R[" & f1 & "]C[" & c1 & "]&""(""&TEXT((R[" & f1 & "]C[" & c1 & "]*100)/R[" & f2 & "]C[" & c2 & "],""00,00"")&""%""&"")"""
Te aclaro que la fórmula original que mandaste apunta a D8 e I8, y no a las celdas D7 y F7.
Suerte

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas