Ahí te va otra de Excel

Nuevamente molestándote y al vez agradeciendo tu atención.
Tengo un rango de Fechas Ejem 17/Mzo/03 al 30/jun/04
Necesito que en base a dicho rango Excel ponga automáticamente el plazo en días entre las dos fechas así como el Mes y los días que restan por cada mes, en este ejemplo el resultado debería ser:
Plazo : 471 días
Marzo 14
Abril 30
Mayo 31
Junio 30
Julio 31
Agosto 31
Septiembre 30
Octubre 31
Noviembre 30
Diciembre 31
Enero 31
Y así sucesivamente hasta llegar nuevamente a junio.
Espero puedas auxiliarme, Mil Gracias.
Atentamente
Gabriel Gutierrez

1 respuesta

Respuesta
1
He supuesto que los valores están en las celdas A1 y B1, si quieres puedes cambiarlo (te he comentado las lineas clave)
Aquí tienes la macro:
Sub macro()
Dim fecha As Date
Dim dias As Integer
Dim diastotales As Integer
'fecha inicial
fecha = Range("A1").Value
dias = 1
diastotales = 0
'lugar donde empieza a situar los valores
Range("B4").Select
fecha = fecha + 1
'comparado con la fecha final
While fecha <= Range("B1").Value
If ActiveCell.Offset(0, -1).Value <> Format(fecha, "mmmm") Then
ActiveCell.Offset(1, -1).Value = Format(fecha, "mmmm")
ActiveCell.Offset(1, 0).Select
dias = 0
Else
dias = dias + 1
ActiveCell.Value = dias
End If
diastotales = diastotales + 1
fecha = fecha + 1
Wend
'lugar donde se escribe el plazo
Range("A3").Value = "Plazo"
Range("B3").Value = diastotales
End Sub
Lo que pasa es que toma los meses de 30 días los toma de 29 y los de 31 de 30 y entonces el plazo vs. los días totales es diferente, ¿podrías arreglarlo?
Gracias Ramon y disculpa la molestia.
Atentamente
Gabriel Gutiérrez.
P.D. ¿De dónde eres?
Ramon, no hagas caso al mensaje anterior. Te agradezco muchísimo tu ayuda, modifique la macro que me enviaste y ya repeta los meses.
Sabia que podía contar contigo.
Atte. Gabriel Gutierrez

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas