300 Ejemplos

Tareas programadas

Tasks Schedule

A continuación, veremos un programa en Excel VBA que establece el color de fondo de tareas que están en el horario en verde y establece el color de fondo de las tareas atrasadas en rojo.





cómo encontrar el cuartil 1 en Excel

Situación:

En Sheet1 tenemos tres tareas (X, Y, Z). Un '1' indica que se ha completado una tarea. Una tarea está programada si existe un '1' en cada columna hasta la fecha de hoy inclusive. Hoy es 6 de junio. Las tareas X e Y están programadas. La tarea Z está retrasada (no '1' en la celda E8).





Tareas programadas en Excel VBA

Cree un evento de cambio de hoja de trabajo. Excel VBA ejecutará el código agregado al evento de cambio de hoja de trabajo cuando cambie una celda en una hoja de trabajo.



1. Abra el Editor de Visual Basic .

2. Haga doble clic en Sheet1 (Sheet1) en el Explorador de proyectos.

3. Elija Hoja de trabajo en la lista desplegable de la izquierda. Elija Cambiar en la lista desplegable de la derecha.

Evento de cambio de hoja de trabajo en Excel VBA

Agregue las siguientes líneas de código al evento de cambio de la hoja de trabajo:

4. Declare dos variables de tipo Integer.

NingunoIComo Entero, jComo Entero

5. Agregue un Hacer mientras bucle .

Hacer TiempoCeldas (6 + i, 1) .Valor ''


yo = yo + 1
Círculo

Explicación: Para i = 0, Excel VBA verifica la tarea X, para i = 1, la tarea Y, etc. Excel VBA deja el ciclo Do While cuando Cells (6 + i, 1). El valor está vacío (no hay más tareas para verificar) .

fórmula para determinar qué celdas formatear

Agregue las siguientes líneas de código (en 6, 7 y 8) al bucle Do While.

6. Inicialice la variable j con valor 0.

j = 0

7. Establezca el color de fondo de una tarea en verde, asumiendo que la tarea está dentro del programa (esto no es necesariamente cierto, por supuesto).

Celdas (6 + i, 1) .Interior.ColorIndex = 4

8. Agregue otro bucle Do While.

Hacer TiempoCeldas (4, 2 + j) .Valor<= Date
SiCeldas (6 + i, 2 + j) .Valor = 0LuegoCeldas (6 + i, 1) .Interior.ColorIndex = 3
j = j + 1
Círculo

Nota: la función Fecha devuelve la fecha de hoy.

Explicación: Para i = 0, j = 0, Excel VBA verifica la celda B6. Para i = 0, j = 1, Excel VBA verifica la celda C6, etc. Una tarea está programada si existe un '1' en cada columna hasta la fecha de hoy inclusive. Si Excel VBA encuentra un '0', establece el color de fondo de la tarea en rojo.

9. Pruebe el programa. Por ejemplo, indique que se completó la tarea Z el 6 de junio. Como resultado, la tarea Z se volverá verde automáticamente.

Resultado de tareas programadas

7/8 Completado! Obtenga más información sobre fechas y horarios>
Ir al capítulo siguiente: Eventos



^