Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/10/2011, 09:44
Avatar de Chaudx
Chaudx
 
Fecha de Ingreso: marzo-2002
Ubicación: Quilpué, Chilito lindo
Mensajes: 345
Antigüedad: 22 años, 1 mes
Puntos: 2
Buscar útlimo registro ingresado tabla excel con datos repetidos

Hola foreros.
Tengo un libro de excel para controlar un grupo de trabajadores.

Tengo una primera hoja llamad INICIO, con botones que me despliegan formularios para agregar, modificar o liminar datos y campos de búsqueda basados en fórmulas de excel en las mismas celdas.

En la hoja DATOS tengo todos los datos del personal.

En otra tengo las licencias médicas presentadas.

En ésta última tengo 5 columnas:

[RUT TRABAJADOR][NOMBRE][INICIO LICENCIA][DIAS][TERMINO LICENCIA]

Estos datos se van llenando a medida que el personal presenta licencia.

Necesito hacer lo siguiente:

En la hoja inicio, tengo una celda donde ingreso el RUT de la persona.
Entonces me despliega todos los datos tomados de la hoja DATOS por medio de una fórmula creada por mi bastante sencilla que producto que los RUT, son únicos, busca por RUT y me muestra los datos correctos.

Necesito complementar la información, y que me muestre la última licencia presentada por el RUT, pero el problema es que en esta hoja, el RUT, puede repetirse tantas veces como licencias presente el trabajador, por eso las fórmulas anteriores no me sirven.

Necesito ayuda para crear la fórmula correcta.

Tengo el siguiente código:
Código:
Function buscalicencia(a, b)


    With Sheets("licencias")
    filalibre = .Range("A1").End(xlDown).Offset(1, 0).Row 'la variable filalibre guarda el nro. de la primer celda vacía.
    dato = a
    rango = "A2:A" & filalibre
    Set midato = .Range(rango).Find(dato, LookIn:=xlValues, SearchDirection:=xlPrevious, LookAt:=xlWhole)
    If Not (midato) Is Nothing Then
        
        ubica = midato.Address(False, False)
        buscalicencia = .Range(ubica).Offset(0, b).Value
  Set midato = Nothing

End If
End With

End Function
Alguna idea??

Les cuento que por una extraña razón, la fórmula me funciona correctamente pero sólo en ocasiones no me entrega valores correctos.
¿Será por que la columna RUT no está ordenada?
__________________
Servicios computacionales
Linux registered User # 306587
Ubuntu user #14563

Última edición por Chaudx; 19/10/2011 a las 10:01 Razón: Actualización