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
Buscar un Valor en un Rango de Celda en EXCEL
- joseluisysturiz
- Posts: 2064
- Joined: Fri Jan 06, 2006 9:28 pm
- Location: Guatire - Caracas - Venezuela
- Contact:
Re: Buscar un Valor en un Rango de Celda en EXCEL
Te doy algunas notas y creo que usando un for anidado puedes recorrer cada celda y verificar el valor que buscas, saludos...
Valor de la celda
Usando IF
Espero te ayude o de idea de como hacerlo, a la orden por cualquier ayuda.

Code: Select all | Expand
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
oBook:Cells( nRow, nCol ):Value
Usando IF
Code: Select all | Expand
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!
Gracias a mi Dios ante todo!