Página 1 de 1

Busqueda por columna en excel

Publicado: 06 Ago 2014, 22:58
por eporti
Hola, no llevo mucho tiempo usando Autoit y agradeceria su ayuda. Estoy tratando de realizar un script que me ayude a buscar numeros de serie en una columna en especifico de un archivo excel. Hasta ahorita lo estuve intentando con el siguiente codigo y me realiza la busqueda pero en todo el archivo.

$oExcel.Range("D1:D2000").Activate
$oExcel.cells.find(GUICtrlRead($NoSerie),$oExcel.ActiveCell,Default,Default,Default,Default,2).Activate
$oExcel.cells.pos

Saludos
Gracias de antemano

Re: Busqueda por columna en excel

Publicado: 07 Ago 2014, 11:23
por juantxo
Algo facil...
Partiendo de un Excel llamado numeros.xlsx con una columna A de nombres, y una columna B con los nº de serie.

Código: Seleccionar todo

#include <GUIConstants.au3>
#include <excel.au3>

$oExcel= _ExcelBookOpen(@ScriptDir&"\numeros.xlsx",1,1)

If $oExcel = 0 Then 	Exit MsgBox(0, 'Error',"No se puede abrir el archivo de Excel.")

Local $Columna = 2 ; nº de columna a revisar
Local $cont_fila=1 ;empezar a mirar en fila dos
Local $nSerie="" ;Variable para almacenar los resultados.
Local $n_Excel=0

_ExcelSheetActivate($oExcel,'Hoja1') ; Actrivar la hoja nº 1 por nombre.

Do ; Bucle para recorrer la columna
	$cont_fila +=1
	$n_Excel = _ExcelReadCell($oExcel,$cont_fila,$Columna)
	If $n_Excel <>"" Then $nSerie &=$n_Excel  & @CRLF
Until $n_Excel =""
_ExcelBookClose($oExcel,0)
MsgBox(0, 'Resultado',$nSerie & @CRLF &"----")



Exit
Con este Script cargas todos los nº de serie en un String.
Tendras que modificarlo para hacer la busqueda, pero la clave esta en la funcion _ExcelReadCell. :smt040