MACRO: Sumar de 12 en 12 celdas de una misma fila, solo las que tengan valores diferentes a cero

Tengo una tabla de alumnos, desde alumno 1 hasta el alumno 3 (filas), conteniendo sus notas de año y medio en meses (columnas), en algunas de sus registros aparecen ceros.
1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 11m 12m 1m 2m 3m 4m 5m 6m
Alumno1 12 0 15 15 13 12 0 0 10 9 10 12 12 0 0 0 12 12
Alumno2 5 0 0 3 14 10 12 12 17 15 0 0 8 12 12 13 10 15
Alumno3 0 11 14 0 12 0 17 16 11 10 13 15 12 10 0 0 0 0
Necesito como solución la suma por fila dé cada 12 celdas siempre y cuando sean diferentes a 0 "cero" pero en Excel. Obviamente para registros muchos más grandes... El resultado quedaría algo así
A B
Alumno1 144
Alumno2 133 25
Alumno3 141
1° Fila suma los 12 primeros números dif. A CERO luego la + del resto
2° Fila suma los 12 primeros números dif. A CERO luego la + del resto
3° Fila suma los 12 primeros números dif. A CERO, en este caso solo hay 11 números entonces solo seria la suma de ellos, si no fuera asi entonces sumaria el resto como en las demás filas.

1 respuesta

Respuesta
1

Function meses(celda, incremento)
'Regresa el nombre de un mes
'Por.Dam
If incremento > 11 Then
MsgBox "Error en el número, no debe ser mayor a 11"
meses = "#N/A"
End If
Select Case celda
Case "enero", "ENERO"
mes = 1
Case "febrero", "FEBRERO"
mes = 2
Case "marzo", "MARZO"
mes = 3
Case "abril", "ABRIL"
mes = 4
Case "mayo", "MAYO"
mes = 5
Case "junio", "JUNIO"
mes = 6
Case "julio", "JULIO"
mes = 7
Case "agosto", "AGOSTO"
mes = 8
Case "septiembre", "SEPTIEMBRE"
mes = 9
Case "octubre", "OCTUBRE"
mes = 10
Case "noviembre", "NOVIEMBRE"
mes = 11
Case "diciembre", "DICIEMBRE"
mes = 12
End Select
mesfin = mes + incremento
If mesfin > 12 Then
mesfin = mesfin - 12
End If
Select Case mesfin
Case 1
meses = "ENERO"
Case 2
meses = "FEBRERO"
Case 3
meses = "MARZO"
Case 4
meses = "ABRIL"
Case 5
meses = "MAYO"
Case 6
meses = "JUNIO"
Case 7
meses = "JULIO"
Case 8
meses = "AGOSTO"
Case 9
meses = "SEPTIEMBRE"
Case 10
meses = "OCTUBRE"
Case 11
meses = "NOVIEMBRE"
Case 12
meses = "DICIEMBRE"
End Select
End Function

La pregunta no admite más respuestas

Más respuestas relacionadas