Está en la página 1de 3

30 macros tiles y sencillas: Mensaje de descanso

Todos sabemos que no es bueno permanecer demasiado tiempo sentados trabajando sin tomarnos un descanso, de hecho tomar descansos regulares durante mejora la productividad. Es por esto que en esta entrega vamos a dotar a Excel de una funcionalidad con la cual nos presenta un mensaje que nos recomienda tomar un descanso despus de pasado un tiempo trabajando. Lo primero que vamos a hacer es ingresar al Editor de Visual Basic y para ello desde la primera hoja utilizaremos la combinacin de teclas Alt + F11:

Nos ubicamos en la ventana del Explorador de Proyectos que tenemos en el panel izquierdo de la ventana del Editor de Visual Basic y damos doble clic sobre el Objeto ThisWorkbook Private Sub Workbook_Open() Application.OnTime Now + TimeValue("00:30:00"), "Descanso" End Sub

La primea lnea marca el principio de la macro y vamos a desglosar esta lnea para entender un poco mejor esta macro:

Private Sub: significa Subrutina (Sub) o macro de acceso Privado (Private) y este acceso se aplica cuando se intenta ejecutar desde otra macro. Workbook: Corresponde a la indicacin de que la macro se aplicar sobre el libro de Excel que en ingles se denomina Workbook. Open: Corresponde al evento Abrir, es decir, cuando se abra el libro de trabajo se van a ejecutar unas lneas de cdigo. En resumen, esta primera lnea se interpreta como macro que se ejecutar al momento de abrirse el libro de trabajo. La segunda lnea es la aplicacin del mtodo OnTime de la aplicacin Excel con la cual estamos indicando que a partir de la hora actual (NOW) se deben tener en cuenta 30 minutos (TimeValue(00:30:00)) luego de los cuales se ejecutara una macro llamada Descanso la cual vamos a programar en un Mdulo: Para programar la macro Descanso primero debemos insertar un Mdulo en el Editor de Visual Basic y para ello nos ubicamos en el Explorador de Proyectos sobre el objeto ThisWorkbook, damos clic derecho, seleccionamos la opcin Insertar y elegimos Mdulo:

Ahora veremos que en el Explorador de Proyectos dentro de nuestro libro de trabajo tenemos un nuevo objeto llamado Mdulo1:

Damos doble clic sobre este Mdulo1 para insertar cdigo en el espacio de edicin de la derecha y pegamos el siguiente cdigo: Sub Descanso() MsgBox "Es hora de un receso" End Sub La primera y ltima lnea marcan el inicio y el fin de la macro llamada Descanso y dentro de sta solo hay una lnea (MsgBox Es hora de un receso) la cual presenta un mensaje donde se informa sobre la recomendacin de hacer una pausa laboral. Con esto ya queda listo todo el cdigo para que cada 30 minutos nos recuerde Excel que es hora de tomar un escanso

De acuerdo a sus preferencias, para ajustar el tiempo de descanso solo deben cambiar el tiempo de adicin del mtodo OnTime que en este ejemplo lo dejamos en 30 minutos: TimeValue("00:30:00") Si quisieran un mensaje de descanso cada hora seria as: TimeValue("01:00:00")