Acumular celdas alternar a una fecha

Los 12 meses del año divididos cada uno con dos columnas una con días y la otra com importes

¿Cómo puedo sumar los días acumulados en un mes concreto y después los importes también en un mes determinado? ¿Variando cada mes el acumulado conforme a le fecha que solicite?

2 Respuestas

Respuesta
1

No sé si he entendido correctamente tu pregunta.

¿Es así como lo quieres?

Especifico mi mala pregunta (perdón) Quiero sumar a un mes concreto lo acumulado de días y otro con el importe: es decir de enero a abril = por días acumulados. En mayo días acumulados de enero a mayo etc. Que solo cambiando la fecha me haga ek acumulado automáticamente.

Muchas gracias i perdona

Entonces entiendo que lo que quieres es, dado un mes (mayo) que te saque lo que lleva acumulado en días e importes desde primero de año. Además, gracias a la foto que has puesto ahora, veo que la primera columna no lo tenías como fecha, como yo erróneamente suponía, sino ya directamente en número de días.

Lo que no sé, porque no se ve en la foto, es hasta donde llega cada columna o si el número de filas en los meses es de 31 como máximo.

Tampoco se ve en la foto, si en cada mes tiene TOTALIZADORES. Es decir, si ha sumado ya los días e importes de cada mes, que sería lógico. Eso facilitaría la tarea.

¿Podrías aclararme esas cuestiones para ir directo al grano?

la primer columna es el concepto. Después vienen los 12 meses (a doble columna días a computar del mes y el importe comisión) Se entra cada mes manualmente y a final de año se suman los días y los importes.

Yo necesitaría saber como lo puedo sacar el acumulado de enero a marzo de días e importe o en el mes de junio etc. Supongo que poniendo en una celda el mes y que la formula ya me sume los días desde enero hasta el mes que he señalado.

Perdona la complicación. Y desde luego muchísimas gracias por tu interés

Bien, pero no me has respondido a la pregunta que te hice:

Tampoco se ve en la foto, si en cada mes tiene TOTALIZADORES. Es decir, si ha sumado ya los días e importes de cada mes, que sería lógico. Eso facilitaría la tarea.

Desde luego, totalizando días/importes por mes (lo cual sería bastante lógico) facilitaría mucho obtener otro tipo de totalizadores. No es que sea imprescindible, pero en mi opinión cada mes debería llevar sus totalizadores.

Si no, también se puede obtener la suma sin totalizadores. Lo pensaré un poco más tiempo, pero no quiero perder mucho tiempo si ya tuvieras la mitad del trabajo hecho (sumas por mes) o si te gustaría tenerlas.

¿Me puedes confirmar eso?

En primer lugar muchas gracias por tu interés

He intentado copiar toda la hoja pero queda muy pequeña

Cada mes introduzco manualmente días y importe y al final hago un total anual Es el único totalizador quehago

Pero me interesaría poder hacer totales acumulados en el mes que quiera

Repito que muchísimas gracias por tu interes

Sí que se puede hacer con fórmulas. Te paso la foto y luego el código:

Pincha en la imagen para verla más grande.

Las fórmulas en este ejemplo serían:

  • Sumas por mes:  En C14:  =SUMA(C$3:C$13)  luego arrastras esa fórmula hasta el mes de diciembre.
  • Tabla de acumulados por meses (desde A20 hasta F32).   

Y éstas son las FÓRMULAS que aparecen en la última foto (*):

=SUMA(C$3:C$13)  SUMA(D$3:D$13)   E21+C22  F21+D22 

=SUMA(E$3:E$13)  =SUMA(F$3:F$13)     =E22+C23  =F22+D23

=SUMA(G$3:G$13)  =SUMA(H$3:H$13)   =E23+C24  =F23+D24 

=SUMA(I$3:I$13)  =SUMA(J$3:J$13)        =E24+C25 = F24+D25 

=SUMA(K$3:K$13)  =SUMA(L$3:L$13)     =E25+C26  =F25+D26 

=SUMA(M$3:M$13)  =SUMA(N$3:N$13)   =E26+C27  =F26+D27 

=SUMA(O$3:O$13)  =SUMA(P$3:P$13)   =E27+C28  =F27+D28 

=SUMA(Q$3:Q$13)  =SUMA(R$3:R$13)   =E28+C29  =F28+D29 

=SUMA(S$3:S$13)  =SUMA(T$3:T$13)   =E29+C30  =F29+D30 

=SUMA(U$3:U$13)  =SUMA(V$3:V$13)   =E30+C31  =F30+D31 

=SUMA(W$3:W$13)  =SUMA(X$3:X$13)  =E31+C32  =F31+D32 

=SUMA(Y$3:Y$13)  =SUMA($3:$13)         =E32+C33  =F32+D33

(*) No sé si tu excel está en las mismas columnas, pero si las mueves de fila o de columna, las fórmulas también se mueven con ellas.

  • Fórmula de ACUMULADOS buscando un mes 

Para los días:  =BUSCARV($C16;$B$22:$F$33;4;FALSO)

Para importes: =BUSCARV($C16;$B$22:$F$33;5;FALSO)

Es lo que aparece aquí:

Tecleas la palabra Junio (nombre del mes) y te calcula:

Prueba y me dices.

.

Respuesta
1

como no es muy clara tu explicacion yo supongo esto en el ejemplo de la imagen asi veo tu informacion, y con solo teclear una fecha ejemplo 10/01/2018 quieres que en E1 aparezca el total del mes del dia 10 al 31 de Enero en este caso es igual a 131,856, si es esto lo que buscas esta es la formula que ocupas =SUMA(DESREF(A1, COINCIDIR(D2,A1:A365,0)-1, 1, FIN.MES(D2,0)-D2+1, 2)), funciona solo para el mes que corresponda a la fecha que tecleas.

Especifico mi mala pregunta (perdón) Quiero sumar a un mes concreto lo acumulado de días y otro con el importe: es decir de enero a abril = por días acumulados. En mayo días acumulados de enero a mayo etc. Que solo cambiando la fecha me haga ek acumulado automáticamente.

Muchas gracias y perdona

Puedes dar un ejemplo más completo con el resultado que esperas obtener de la fórmula, ¿son lo que pusiste me resulta alfo difícil entender lo que quieres donde esta las fechas?, esos son datos claves para que la fórmula (en caso de hallarla) funcione.

la primer columna es el concepto. Después vienen los 12 meses (a doble columna días a computar del mes y el importe comisión) Se entra cada mes manualmente y a final de año se suman los días y los importes.

Yo necesitaría saber como lo puedo sacar el acumulado de enero a marzo de días e importe o en el mes de junio etc. Supongo que poniendo en una celda el mes y que la formula ya me sume los días desde enero hasta el mes que he señalado.

Perdona la complicación. Y desde luego muchísimas gracias por tu interés

Lamento decirte por fórmulas no se puede (al menos yo no encontré la forma de hacerlo así) ya que vas a manejar la información de una forma dinámica que va a estar en función de las fechas que manejes, esto se puede hacer con macro, solo que esto implica poner la información como se muestra en la imagen, en cuanto cualquiera de las dos fechas cambie la macro en automático se activa, espero te sirvan

yestas son las macros

'esta macro va en un modulo standad del panel VBA
Sub calcula_dias()
Set datos = Range("a4").CurrentRegion
inicio = Range("b1")
FIN = Range("B2")
mes1 = UCase(MonthName(Month(inicio)))
mes2 = UCase(MonthName(Month(FIN)))
With datos
r = .Rows.Count
On Error Resume Next
c1 = WorksheetFunction.Match(mes1, .Rows(1), 0)
c2 = WorksheetFunction.Match(mes2, .Rows(1), 0)
If Err.Number > 0 Then MsgBox ("TECLEASTE MAL UNA FECHA"), _
vbInformation, "AVISO EXCEL": End
On Error GoTo 0
rango = .Cells(3, c1).Address
If c1 = 1 Then c2 = c2 + 1
If c1 > 1 Then c2 = c2 - 1
Set info = Range(rango).Resize(r - 2, c2)
info.Select
For i = 1 To c2
    non = (i * 2) - 1
    par = i * 2
    If i = 1 Then
        SUMA = WorksheetFunction.Sum(info.Columns(i))
        SUMA2 = WorksheetFunction.Sum(info.Columns(i * 2))
    End If
    If i > 1 Then
        sumad = WorksheetFunction.Sum(info.Columns(i * 2 - 1))
        sumad2 = WorksheetFunction.Sum(info.Columns(i * 2))
    End If
       If non <= c2 Then SUMA = sumad + SUMA
        If par <= c2 Then SUMA2 = sumad2 + SUMA2
Next i
Range("E1") = SUMA
Range("E2") = SUMA2
Set datos = Nothing: Set info = Nothing
End With
Set datos = Nothing: Set info = Nothing
End Sub
'y esta macro va en modulo vba de la hoja en la que tengas los datos y es la
'que activa la macro que hace los calculos.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B1:B2")) Is Nothing Then
        calcula_dias
    End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas