Para algunos documentos, es útil tener una lista de fechas que pueda utilizar como base para su trabajo. Por ejemplo, es posible que deba crear un informe que enumere todas las fechas entre ahora y el final del año, junto con el nombre de una persona o el nombre de un proyecto a la derecha de la fecha.

El punto de partida, por supuesto, es obtener la lista de fechas.

Hay un par de formas de abordar la generación de la lista. Un método sencillo es utilizar Excel junto con Word. La función Autocompletar de Excel hace que la generación de una lista de fechas sea increíblemente fácil. Una vez que tenga la lista en Excel, puede copiarla y pegarla en el documento de Word, o puede usar la combinación de correspondencia para combinar las fechas en el documento (si ese enfoque es apropiado para sus necesidades).

Si prefiere no usar Excel por alguna razón, la mejor solución es usar una macro. La siguiente macro crea muy rápidamente una lista de todas las fechas para el año 2015:

Sub PrintYearDays()

Dim DateToday As Date     Dim T As Integer

'Because the date is going to be changed, save it     DateToday = Date     Date = #12/31/2014#

For T = 1 To 365         Selection.TypeText Text:=Format(Date + T, _           "mmmm dd yyyy")

Selection.TypeParagraph     Next T

'Restore today's date     Date = DateToday End Sub

Observe que la macro funciona restableciendo la fecha en su sistema.

La fecha actual de hoy se almacena en la variable DateToday, y luego la fecha se restablece a la fecha de inicio de su rango. Si desea que la macro funcione para algún otro rango de fechas, simplemente cambie la fecha de inicio, junto con el valor final del ciclo For …​ Next.

Si necesita crear listas de fechas y nunca sabe con certeza cuáles serán las fechas de inicio y finalización en el rango, entonces tiene más sentido un enfoque macro diferente. La siguiente macro le pide una fecha de inicio y finalización:

Sub ListDates()

Dim ListDate as Date     Dim StartDate As Date     Dim EndDate As Date     Dim Repeats As Integer

'Gets user input     StartDate = InputBox("Please enter the starting date.", _       "Start Date", "Start Date")

EndDate = InputBox("Please enter the ending date.", _       "End Date", "End Date")



'Enters the start date in the document     Selection.TypeText Text:=Format(StartDate, _       "dddd, MMMM dd, yyyy")

Selection.TypeText (vbCr & vbLf)



'Determines the number of dates to print     Repeats = DateDiff("d", StartDate, EndDate)



'Loops to print the list of dates     For i = 1 To Repeats         ListDate = DateAdd("d", i, StartDate)

Selection.TypeText Text:=Format(ListDate, _           "dddd, MMMM dd, yyyy")

Selection.TypeParagraph     Next i End Sub

Las variables StartDate y EndDate, establecidas por su entrada, determinan cuántas veces se repite el ciclo For …​ Next.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios WordTips), he preparado una página especial que incluye información útil.

link: / wordribbon-WordTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

WordTips es su fuente de formación rentable en Microsoft Word.

(Microsoft Word es el software de procesamiento de texto más popular del mundo). Este consejo (3864) se aplica a Microsoft Word 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Word (Word 2007 y más tarde) aquí:

link: / wordribbon-Generating_a_List_of_Dates [Generando una lista de fechas].