Buscar un Valor en un Rango de Celda en EXCEL

Buscar un Valor en un Rango de Celda en EXCEL

Postby jbrita » Tue Mar 17, 2015 12:38 pm

amigos nuevamente por aca, solicito su ayuda. como puedo pasar esto a fw

Public rango As String, valorbuscado As String

Sub Encontrarvalores()
Dim resultado As Range
Dim primerabusqueda As String
Dim contador As Double


Set resultado = Range(rango).Find(valorbuscado, , xlValues, xlWhole, xlByColumns, xlNext, False, , False)



If resultado Is Nothing Then
MsgBox "No se encontraron coincidencias."
Else
primerabusqueda = resultado.Address
Do
contador = contador + 1
resultado.Interior.ColorIndex = 10
resultado.Font.ColorIndex = 2
Set resultado = Range(rango).FindNext(resultado)
Loop While Not resultado Is Nothing And resultado.Address <> primerabusqueda

If contador = 1 Then
MsgBox "Se encontró " & contador & " coincidencia."
Else
MsgBox "Se encontró " & contador & " coincidencias."
End If

End If

End Sub


Quiero buscar un valor en una planilla excel.

Saludos
jbrita
 
Posts: 487
Joined: Mon Jan 16, 2006 3:42 pm

Re: Buscar un Valor en un Rango de Celda en EXCEL

Postby joseluisysturiz » Tue Mar 17, 2015 3:04 pm

Te doy algunas notas y creo que usando un for anidado puedes recorrer cada celda y verificar el valor que buscas, saludos... :shock:

Code: Select all  Expand view

   oExcel := TOleAuto():New( "Excel.Application" ) // ACTIVANDO EXCEL
   oExcel:Workbooks:Open( cFileXls ) // ABRO EL ARCHIVO SELECCIONADO
//
   oBook := oExcel:Get( "ActiveSheet" ) // ACTIVO HOJA EXCEL
   nRows := oBook:UsedRange:Rows:Count() // CANTIDAD LINEAS EXCEL INCLUYENDO LA LINEA 1 QUE ES LA CABECERA
   nCols := oBook:UsedRange:Columns:Count() // CANTIDAD COLUMNAS EXCEL
 


Valor de la celda
Code: Select all  Expand view

oBook:Cells( nRow, nCol ):Value
 


Usando IF
Code: Select all  Expand view

      IF LEN( oBook:Cells( nRow, 13 ):Value ) <= 50 // DESDE 1-50
         cSql += "rep_observa1=" + ClipValue2SQL( SUBST( oBook:Cells( nRow, 13 ):Value ,;
            1, Len( oBook:Cells( nRow, 13 ):Value ) ) ) + ", "

      ELSE
         cSql += "rep_observa1=" + ClipValue2SQL( SUBST( oBook:Cells( nRow, 13 ):Value, 1, 50 ) ) + ", "
      ENDIF
 


Espero te ayude o de idea de como hacerlo, a la orden por cualquier ayuda.
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 32 guests