Diagrama de turnos

Buen día experto quisiera saber como se realiza la siguiente macro : En la columna A1, A2, A3... Tengo los nombres de los empleados /// en la fila B1, C1, D1 ... Los días del mes y en las celdas que corresponden a un nombre y un día determinado, tengo una letra M o T (mañana o tarde), lo que quisiera es hacer una macro que baya a la celda C3 (que corresponde a Juan para el día 5) y si encuentra la letra "M", copie en nombre de Juan en otra celda y si no que no ponga nada.
Muchas gracias ... Eduardo.

1 Respuesta

Respuesta
1
Yo he creado un botón para facilitar ejecutar la macro, tu adáptalo de la forma que quieras.
Private Sub CommandButton1_Click()
' en la columna A estan los nombre
' en la columna B estan las fechas
' en la columna C estan los turnos
' en celda d2 voy a escribir si trabaja de mañana en esa fecha
' en celda e2 voy a escribir si trabaja de tarde en esa fecha
Dim fecha As Date
nombre = "JAVIER" ' nombre predeterminado, que puede ser otro
fecha = "5 - 1 - 8" ' fecha predeterminada, que puede ser otra
With Range("b:b")
Set c = .Find(fecha, LookIn:=xlFormulas)
If Not c Is Nothing Then
firstAddress = c.Address
Do
If UCase(c.Offset(0, -1)) = UCase(nombre) And c.Offset(0, 1) = "M" Then
Range("d2") = c.Offset(0, 1)
Range("e2") = ""
Exit Do
Else
If UCase(c.Offset(0, -1)) = UCase(nombre) And c.Offset(0, 1) = "T" Then
Range("d2") = ""
Range("e2") = c.Offset(0, 1)
Exit Do
Else
Range("d2") = ""
Range("E2") = ""
End If
End If
End Sub
Muchas Gracias ! En realidad esta respuesta va a complementar algo más complejo, pero es sorprendente como el experto con tan poca información, se imaginó el resto, nuevamente gracias ... Eduardo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas