Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/01/2005, 01:56
asitudela
 
Fecha de Ingreso: mayo-2004
Mensajes: 398
Antigüedad: 21 años
Puntos: 4
Alguien me puede poner está función de forma recursiva (VB en Excel)

Código:
Private Function Buscar(texto As String) As Boolean

    Dim encontrado As Boolean

    'Busca en la BD de preguntas los campos pasados y devuelve verdadero
    'deja posicionado el cursor en la celda encontrada
    
    'Vamos recorriendo la BD y comprobado
    Worksheets("Preguntas").Activate
    Worksheets("Preguntas").Range("A2").Activate
    
    Do While Not IsEmpty(ActiveCell) And Not encontrado
        
        If obPregunta.Value Then
            If UCase(ActiveCell.Value) = UCase(texto) Then
                encontrado = True
            End If
        Else
            If UCase(ActiveCell.Cells(1, 2).Value) = UCase(texto) Then
                encontrado = True
            End If
        End If
        ActiveCell.Offset(1, 0).Activate
        
    Loop
    'Retrocedemos una para posicionarnos en la anterior, ya que el offset
    'se ha ejectutado aún cuandolo ha encontrado
    
    ActiveCell.Offset(-1, 0).Activate
    Buscar = encontrado
    
End Function