Uso de formulas aplicando RC[ ] etc. En la Excel VBA

Para Dante

Buenos días Dante necesito una explicación de uso de RC ( fila y columna), -1, los apostrofes en las formulas.

Esto es una respuesta que diste a un usuario

Aplicación de sumar.si en celda que contenga un dato especifico

With h2.Range("B3:B" & u2)
        .Value = "=SUMIF('" & h1.Name & "'!R3C[1]:R" & u1 & "C[1],RC[-1],'" & h1.Name & "'!R3C[24]:R" & u1 & "C[24])"
        .Value = .Value
End With

entiendo hasta cierto caso: Sumar.si(Hojax! Fila3col1:fila & ultimafila & concateno col1 y no se mas

¿Puedes dar un par de ejemplos de como aplicar esto en una macro?

1 respuesta

Respuesta
1

La fórmula se empieza a poner en la h2 en la celda B3

=SUMAR.SI(Hoja1!C$3:C$9,A3,Hoja1!Z$3:Z$9)

De ahí podemos deducir lo siguiente:

El primer apostrofe que se pone es para en caso de que el nombre de la hoja tenga espacios:

=SUMAR.SI('resumen de saldos'!C$3:C$9,A3,'resumen de saldos'!Z$3:Z$9)
.Value = "=SUMIF('

El primer parámetro es el rango

C$3:C$9

En la macro:

R3C[1]:R" & u1 & "C[1]

Significa R3 = Fila 3 , si el número está sin corchetes, entonces es absoluta, por eso en la fórmula ves $3

C[1] = Columna más 1, si el número está entre corchetes, entonces es relativa, por eso en la fórmula ves C

La columna C, es porque la fórmula está en la columna B, entonces B + 1 = columna C


El siguiente parámetro es el criterio.

En la fórmula dice

A3

En la macro dice

RC[-1]

Regreso a la posición de la fórmula, la fórmula como ya mencioné está en la celda B3

R (sin número) significa que es relativa, y que va a tomar el mismo número de fila donde se encuentra la fórmula, en este caso la fila 3

C[-1], significa que va a tomar la posición relativa de la columna donde está la fórmula -1, la fórmula está en la columna B -1, entonces es la columna A, por eso en la fórmula es A3.


El último parámetro es el rango de suma

La fórmula dice:

Z$3:Z$9

La macro dice:

R3C[24]:R" & u1 & "C[24]

el rango va desde la fila 3 Columna 24, si sumas 24 columnas después de la columna B (recuerda que la fórmula está en la columna B), el resultado es la columna Z


Para que practiques, puedes crear cualquier fórmula, inicia la grabadora de macros, edita la fórmula y presiona enter; VBA creará el código para que lo analices.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas