Author | Topic: Como buscar en un rango de Excel | |
---|---|---|
RIBO SALAMANCA | Como buscar en un rango de Excel on Thu, 14 Jan 2016 10:45:01 -0500 Hola todos Alguien que me de una mano con esto: Estoy tratando de buscar en un rango de celdas en excel pero no logro extraer el contenido LOCAL oRange, nRow, nCol ******* Esta funciona bien pero busca en toda la hoja la primera ocurrencia oRange := oSheet:Find("01") ******* Esta linea intento busca en el rango especificado per me da error Type mismatch oRange := oSheet:Find("01","B9:B17","D9:D17") Tengo error -2147352571 "Type mismatch." Cual puede ser mi error? En donde encuentro buena información para estudiar? nRow := oRange:row nCol := oRange:column ******* Obtengo el dato de la celda encontrada xData := oSheet:Cells(nRow,nCol):Value Saludos y gracias. | |
Jose Antonio Diego Kereje | Re: Como buscar en un rango de Excel on Sun, 17 Jan 2016 18:50:56 +0100 Hola Ribo: Prueba el ejemplo que adjunto. En él se genera una hoja Excel con cinco columnas que se rellenan con etiquetas del tipo "Item 1"... "Item 7", se establece un rango de búsqueda para las columnas 2, 3 y 4, se localizan las etiquetas "Item 5" y se sustituyen por la palabra reemplazado. Saludos. Diego PROJECT.XPJ Test.PRG | |
Jose Antonio Diego Kereje | Re: Como buscar en un rango de Excel on Sun, 17 Jan 2016 18:56:44 +0100 | |
RIBO SALAMANCA | Re: Como buscar en un rango de Excel on Sun, 17 Jan 2016 13:34:02 -0500 Maravilloso!!!! Funciona perfecto y era lo que necesitaba. Muchas gracias Jose Antonio. "Jose Antonio Diego Kereje" escribió en el mensaje de noticias:4fafa3d2$47a465ab$3a79a@news.alaska-software.com... Segundo intento. | |
RIBO SALAMANCA | Re: Como buscar en un rango de Excel on Wed, 20 Jan 2016 08:40:26 -0500 Jose Antonio Tengo otra inquietud, tu ejemplo me sirve si tenemos un solo rango, pero necesito redefinir nuevos rangos como deshabilito uno y defino otro? 1er rango funciona perfecto nRow := nCol := 0 oRange:= oSheet:range( 'A28', 'G56' ) oCells:= oSheet:cells dbGoTop() DO WHILE !Eof() IF ( oCellRange:= oRange:find( StrZero(Val(('USOYESTR')->estrato),2) ) ) # nil nRow := oCellRange:row nCol := oCellRange:column oSheet:Cells(nRow,nCol+2):Value := Transform( FACTURADO->urbano,"9,999,999,999") oSheet:Cells(nRow,nCol+3):Value := Transform( FACTURADO->rural,"9,999,999,999") oSheet:Cells(nRow,nCol+4):Value := Transform( FACTURADO->acueduc,"9,999,999,999") oSheet:Cells(nRow,nCol+5):Value := Transform( FACTURADO->alcanta,"9,999,999,999") oSheet:Cells(nRow,nCol+6):Value := Transform( FACTURADO->aseo,"9,999,999,999") dbSkip() ENDDO 1do rango no hace la busqueda, parece ser que hay que deshacer el primer rango? nRow := nCol := 0 oRange:= oSheet:range( 'A68', 'G76' ) dbGoTop() DO WHILE !Eof() IF ( oCellRange:= oRange:find( StrZero(Val(('USOYESTR')->estrato),2) ) ) # nil nRow := oCellRange:row nCol := oCellRange:column oSheet:Cells(nRow,nCol+2):Value := Transform( FACTURADO->urbano,"9,999,999,999") oSheet:Cells(nRow,nCol+3):Value := Transform( FACTURADO->rural,"9,999,999,999") oSheet:Cells(nRow,nCol+4):Value := Transform( FACTURADO->acueduc,"9,999,999,999") oSheet:Cells(nRow,nCol+5):Value := Transform( FACTURADO->alcanta,"9,999,999,999") oSheet:Cells(nRow,nCol+6):Value := Transform( FACTURADO->aseo,"9,999,999,999") ELSE MsgBo( ' No se hallo el estrato') END IF dbSkip() ENDDO Muchas Gracias Quedo atento Ribo Salamanca intento. | |
Jose Antonio Diego Kereje | Re: Como buscar en un rango de Excel on Wed, 20 Jan 2016 23:40:57 +0100 Hola Ribo: > Tengo otra inquietud, tu ejemplo me sirve si tenemos > un solo rango, pero necesito redefinir nuevos rangos > como deshabilito uno y defino otro? Puedes definir tantos rangos como quieras o necesites, lo puedes comprobar en el ejemplo que adjunto. En tu caso deberás revisar los datos de origen de la hoja de Excel y comprobar que los de búsqueda son correctos para que ésta sea posible. Saludos. Diego Test.zip | |
RIBO SALAMANCA | Re: Como buscar en un rango de Excel on Fri, 22 Jan 2016 15:38:50 -0500 Entendido José Antonio Muchas gracias y un abrazo. "Jose Antonio Diego Kereje" escribió en el mensaje de noticias:7c2ee122$2a3b742e$44819@news.alaska-software.com... Hola Ribo: > Tengo otra inquietud, tu ejemplo me sirve si tenemos > un solo rango, pero necesito redefinir nuevos rangos > como deshabilito uno y defino otro? Puedes definir tantos rangos como quieras o necesites, lo puedes comprobar en el ejemplo que adjunto. En tu caso deberás revisar los datos de origen de la hoja de Excel y comprobar que los de búsqueda son correctos para que ésta sea posible. Saludos. Diego |