Como corregir un Error en Formula excel

Sres. T.E.

 Tengo en una celda Excel la siguiente formula “=SUMAR.SI(Entradas!$C$7:C19;A7;Entradas!$E$7:E19)”

 Cual seria el formato  en una macro VBA, para pegarla en un rango.

 La cual estoy haciendo lo siguiente en la macro:

 Dim Fila  As Integer

Fila = 18

 Range("D6:D" & Fila  ).Formula = _

"=SUMIF(Entradas!$C$7:C1" & Fila & ",A6,Entradas!$E$7:E" & Fila)"

Al ejecutar la macro me lanza un mensaje “ Se ha producido el error ‘1004’ en tiempo de ejecución:

Error definido por la aplicación o el objeto.

2 Respuestas

Respuesta

El error parece estar en la parte de la fórmula donde se especifica el rango de celdas de la hoja "Entradas". En la fórmula original, el rango de celdas es "$C$7:C19", mientras que en la macro VBA, se está utilizando "$C$7:C1" & Fila, lo cual parece ser un error de escritura.

La parte correcta de la macro VBA debería ser:

Range("D6:D" & Fila).Formula = _

"=SUMIF(Entradas!$C$7:C" & Fila & ",A6,Entradas!$E$7:E" & Fila & ")"

De esta manera, se especifica el rango de celdas correcto en la hoja "Entradas" y debería solucionar el problema de la aplicación o el objeto definido por el error.

Respuesta
1

Si lo que intentas es evitar, con la macro, este tipo de Error como en la fórmula de la imagen:

Debes agregar la función SI. ERROR(función;valor si error)

En ese caso, tu fórmula quedaría así::

=SI.ERROR(SUMAR.SI(Entradas!$C$7:C19;A7;Entradas!$E$7:E19);0)

Y en la macro quedaría de este modo:

Dim Fila  As Integer
Fila = 18
Range("D6:D" & Fila).formula = _
"=IFERROR(SUMIF(Entradas!$C$7:C" & Fila & ",A6,Entradas!$E$7:E" & Fila & "),0)"

* Te invito a mirar el video Nº 15 de mi canal: Fórmulas con VBA.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas