Actualizar suma de forma automática con macro

Gusto en saludarles.

Acudo a ustedes una vez más para solicitar su ayuda en el siguiente tema.

Tengo un calendario mensual en donde llevo un control de gastos.

En la columna M tengo con color azul, la sumatoria de lo que he pagado. Por ejemplo, en la primera semana de mayo (que abarca desde el día 01 al día 07) lo que he pagado está reflejado justo debajo de la Celda que dice “Total Pagado Semana”, es decir la celda M157. La cifra que está en M157 se está calculando con una macro (que suma valores dependiendo del color de la fuente “=Sumarcolor_fuente(M156;B155:K159)” (en este caso color azul).

Lo que estoy buscando y no logro hacer, es crear una macro que de forma automática actualice todas las celdas que están en la columna M que tengan la formula =Sumarcolor_fuente(;) y que lo haga todas las veces que pulse el botón “PAGADO” que coloqué en la parte superior del archivo, para evitar tener que entrar en dichas celdas cada vez que le indique a cualquier concepto que esta pagado (botón “PAGADO”), ya que eso es lo que estoy haciendo, pulso el botón PAGADO y luego me ubico en celda que tiene la formula =Sumarcolor_fuente(;), pulso la tecla F2 y luego Enter para que actualice el valor.

La macro tiene que hacerlo en toda la columna M ya que el calendario contempla los 12 meses y por ende todas las semanas del año.

Espero haberme explicado bien y de antemano muy agradecida por su valiosa ayuda.

1 respuesta

Respuesta
1

Luego de muchos intentos fallidos logré hacer la macro que actualiza los valores en todas las semanas. Estoy segura que debe haber una forma mas corta y sencilla de hacerlo, pero mis conocimientos de macros son muy pocos. De igual manera la comparto. La macro es la siguiente:

Sub PAGADO
' Aplica color azul y negrillas a los montos que se indican como Pagado 
Application.ScreenUpdating = False
    With Selection.Font
        .color = -65536
        .TintAndShade = 0
    End With
    Selection.Font.Bold = True
' Actualiza valor en cada una de las celdas en donde se suma lo Total 
  Pagado Semana en la columna M
    Range("M10").Select
    ActiveCell.FormulaR1C1 = "=Sumarcolor_fuente(R[-1]C,R[-2]C[-11]:R[2]C[-2])"
    Range("M16").Select
    ActiveCell.FormulaR1C1 = "=Sumarcolor_fuente(R[-1]C,R[-2]C[-11]:R[2]C[-2])"
    Range("M22").Select
    ActiveCell.FormulaR1C1 = "=Sumarcolor_fuente(R[-1]C,R[-2]C[-11]:R[2]C[-2])"
    Range("M28").Select
    ActiveCell.FormulaR1C1 = "=Sumarcolor_fuente(R[-1]C,R[-2]C[-11]:R[2]C[-2])"
    ' Y así sucesivamente hasta la última semana del mes de diciembre
    Range("C5").Activate
    Application.ScreenUpdating = True
    End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas