Resumen de sumas de columnas por días específicos.

Para Dante Amor,

Hola Dante buen día, molestándote otra vez, ya me cambiaron la jugada, te explico, el código en el que me has estado ayudando, hace el movimiento, perfecto, lo hice para que fuera con 31 días, no importando si el mes es de 30 o viciesto, pero ahora necesito que no me ponga los días en los cuales no hubo movimiento. O sea del 1 al 15 (quitando digamos el día 9), hay movimiento de ahí hasta el 25, al ejecutar, el código que me mandaste me toma las columnas por día como debe ser 1,2,3, etc.

No encuentro manera de poder mandarte el archivo para que lo veas. Te dejo código.

Sub suma_matriz()
     Application.ScreenUpdating = False
Set H1 = Sheets("Hoja1")
Set H2 = Sheets("Hoja2")
     H1.Activate
     H1.Range("L18").Select
          Range(Selection, Selection.End(xlToRight)).Select
          Selection.Copy
     H2.Activate
     H2.Range("C18").Select
     ActiveSheet.Paste
     Application.CutCopyMode = False
     Hoja2.Cells(18, 1) = "DIA"
     Hoja2.Cells(18, 2) = "TOTAL DIA "
     Hoja2.Rows("19:49").ClearContents
     '- poner los dias del 1 al 31
     'x = 1
     'For i = 19 To 49
     '     Hoja2.Cells(i, 1) = x
     '     x = x + 1
     'Next i
     '-------------- copio filas de h1 elimino repetidos
     For y = 19 To H1.Range("A" & Rows.Count).End(xlUp).Row ' BUSCAR ULTIMA FILA DONDE VA LA FECHA
            dia = Day(H1.Cells(y, "A"))
            Hoja2.Cells(y, 1) = dia
     Next y
Hoja2.Range("A19:A1048000").Select
Hoja2.Range(Selection, Selection.End(xlDown)).Select
Hoja2.Range("A19:A1048000").RemoveDuplicates Columns:=1, Header:=xlYes
Rows("19:19").Select
Selection.Delete Shift:=xlUp
'------------- sumar de hoja1 a hoja2
     For j = 1 To H1.Cells(18, Columns.Count).End(xlToLeft).Column  'BUSCAR ULTIMA COLUMNA FILA TITULOS INCIDENTES
        For i = 19 To H1.Range("A" & Rows.Count).End(xlUp).Row ' BUSCAR ULTIMA FILA DONDE VA LA FECHA
            dia = Day(H1.Cells(i, "A")) + 1
            H2.Cells(dia + 17, j + 2) = H2.Cells(dia + 17, j + 2) + H1.Cells(i, j + 11)
          Next i
    Next j
'------------ suma columnas a la derecha
For Z = 19 To 49
C = Hoja2.Cells(Z, Columns.Count).End(xlToLeft).Column
  If C < Hoja2.Columns("B").Column Then C = Columns("C").Column
     Hoja2.Range("B" & Z) = Application.Sum(Hoja2.Range(Cells(Z, Columns("C").Column), Cells(Z, C)))
Next Z
'------------ suma columnas
f = 19
D = H2.Cells(18, Columns.Count).End(xlToLeft).Column
     For i = 1 To D
          If Cells(18, i) <> Empty Then
    Cells(50, i).FormulaR1C1 = "=SUM(R[-31]C:R[-1]C)"
          End If
Next
End Sub

1 respuesta

Respuesta
1

H o l a:

Envíame tu archivo y me explicas con ejemplos qué es lo que necesitas.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “

jose luis martinez hernandez

” Y el título de esta pregunta.

Avísame en esta pregunta cuando me lo hayas enviado.

':)

S a l u d o s . D a n t e   A m o r 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas