Ayuda con macro

Hola experto, tengo un problemilla creando una macro, en realidad no se como hacerlo.
Utilizo una macro para que cuando introduzca un dato "nombre de jugador" en "D5" hoja 1 me lo copie en la hoja 2 columna B y ponga a la hora en que llegó ese jugador en la columna C, así voy creando un registro con todos los jugadores del día; lo que necesito es que cuando elimine el jugador en la hoja 1 me lo busque en la hoja 2 y ponga a la hora a la que se marchó, tengo esta macro que lo hace
Sub eliminar_jugador()
Dim Dato As Range
Set Dato = Hoja2.Range("B:B").Find(Hoja10.Range("D5").Value, LookIn:=xlValues, LookAt:=xlWhole)
If Dato Is Nothing Then
MsgBox "No se encuentra", 64, ""
Else
Dato.Offset(0, 3) = Time
End If
End Sub
Mi problema es que un jugador puede entrar varias veces, así que necesito que me busque el último registro con ese "nombre de jugador" que además estará si hora de salida,
gracias por adelantado
{"Lat":39.5718222373437,"Lng":-3.8671875}

1 Respuesta

Respuesta
1
Se podría modificar tu macro de esta manera para que hiciera lo que quieres.
Sub eliminar_jugador()
    Dim Dato As Range
    Dim nUltimaFila As Long
    Dim nFila As Long
    nUltimaFila = Hoja2.Range("B" & Columns("B").Rows.Count).End(xlUp).Row
    Set Dato = Nothing
    For nFila = nUltimaFila To 1 Step -1
        If Hoja2.Cells(nFila, 2).Value = Hoja10.Range("D5").Value Then
            Set Dato = Hoja2.Cells(nFila, 2)
            Exit For
        End If
    Next
    If Dato Is Nothing Then
        MsgBox "No se encuentra", 64, ""
    Else
        Dato.Offset(0, 3) = Time
    End If
End Sub
Saludos,
Carlos
[email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas