Visual Basic - Expertos en MSFlexGrid

Life is soft - evento anual de software empresarial
 
Vista:

Expertos en MSFlexGrid

Publicado por Felipe (7 intervenciones) el 30/06/2006 23:49:10
Bueno, me perdonais por lo de "expertos" es que ya he hecho algunas preguntas en este foro y me contestan cualquier tonteria supongo que no se puede evitar.
La pregunta es la siguiente, en un MSFlexGrid que he cargado desde un recordset lo que quiero es que una vez que he introducido el dato en un TextBox me lo busque en todas las celdas el grid y si lo encuentra que me marque la celda y si no que salga un mensaje diciendo que no lo encontro.
Gracias por las posibles respuestas, espeo que sean serias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Expertos en MSFlexGrid

Publicado por maree (30 intervenciones) el 01/07/2006 00:16:14
No se si hay otra forma, pero se me ocurre una bastante manual. Usa ciclos

Puedes revisar todas las lineas q hay en una columna.

Ejemplo

flag = 0 'esta es la bandera q te dice si se encontro el dato o no
dato = text1.text
numr = flex.rows
numc = flex.cols

for X = 0 to numc
flex.col = X
for Y = 0 to numr
flex.row = Y
if trim$(dato) = trim$(flex.text)
'aqui busca las propiedades del flex para marcar la celda como tu quieres,
'aqui el flex esta posicionado en la celda q contiene tu dato.
flag = 1
end if
next
next

if flag = 0 then
msgbox "No se encontro el dato"
end if

Debe ser algo mas o menos asi, espero te sirva, bye ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Expertos en MSFlexGrid

Publicado por Artidoro (78 intervenciones) el 01/07/2006 07:34:59
Bueno...
Si estás usando un recordset...lo que podrías hacer es otro recordset con los campos que deseas buscar y comparas el Campo con el dato del TextBox y preguntras algo asi
consql="select codigo from EMPLEADOS where codigo=' " & text1.text & " '
crears rs(creas el recordset) consql,bd
if rs.recordcount <>"" then
msgbox("código no existe")
else
(Aqui pones la función que hace que sombre el dato)No tecuredo exactamente pero búscalo
end if
end sub

bueno espero haberte dado alguna idea!!!

Suerte!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Expertos en MSFlexGrid

Publicado por Felipe (7 intervenciones) el 01/07/2006 12:12:00
Gracias a los dos por contestar. El ejemplo de artidoro no me vale ya que quiero buscar por todos los campos de la tabla.
Probé el de maree y al principio me daba error en número de columna no válido, lo soluccioné restando 1 a numc y ya me funciona.
Por cierto, para marcar la celda una vez que lo ha encontrado:
MSFlexGrid1.CellBackColor = vbBlue
MSFlexGrid1.CellForeColor = vbWhite

Muchas gracias a ambos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar