Macro simule consultav para rango variable desde otro libro
Buenos días, estoy usando Excel 2010, necesito su ayuda para generar una macro que haga el equivalente a un consultav pero buscando los datos en otro libro y sobre un rango variable.
actualmente estoy usando esta formula...
=SI(ESERROR(CONSULTAV(A2,[Datos.xlsx]Stock!C$2:D$700,2,FALSO)),0,CONSULTAV(A2,[Datos.xlsx]Stock!C$2:D$700,2,FALSO))
por el momento me sirve, pero al ser mas de 600 registros únicos (no se repite ningún producto) y en un rango variable tengo que especificar un rango mayor (700), aparte de repetir básicamente la misma formula 700 veces.
tengo un libro principal "Datos.xlsx" con varias hojas, en la hoja "Productos" es donde se registran todos los productos y cada cierto tiempo se adicionan algunos.
luego tengo un libro por cada mes, cada libro copia la lista de productos del Libro "Datos" hoja "Productos"
la idea es que luego cada libro copie en el libro principal (Datos.xlsx) en una hoja "Stock" la lista de productos y la cantidad, esto para ser tomado por el mes siguiente como un stock inicial, entonces tenemos:
en el libro "Datos.xlsx" en la hoja "Stock" un listado de esta forma...
..............A.................B...................C..............D................E...................F...
1.......Producto....StockAgo.....Producto....StockSet......Producto......StockOct
2........Prod1..............2...............Prod1...........4..............Prod1
3........Prod2..............0...............Prod2...........2..............Prod2
4........Prod3..............4...............Prod3...........6..............Prod3
....
622....Prod621...........6......... ....Prod621........4.............Prod621
623........................................... .Prod622.......10...........Prod622
624................................................................................ Prod623
en el Libro "Octubre.xlsb" en la hoja1 tengo un listado de esta forma...
................A..........B....C....D....E.....F........G
1.........Producto......[otros datos]...........Cant
2...........Prod1.....................................=si(eserror(consultav(A2,[Datos.xlsx]Stock!C2:D.....
3...........Prod2<br class="scayt-misspell" data-scayt_word="Prod2" data-scaytid="4266" />4...........Prod3
....
622.......Prod621
623.......Prod622
624.......Prod623
como la lista de productos del libro "Octubre" hoja "Hoja1" se copia automáticamente del libro Datos.xlsx hoja "Productos", puede darse el caso que tenga mas productos de los que había en setiembre.
lo que necesito es una macro que en el libro "Octubre" haga el equivalente a la función consultav() para no tenér que repetir la formula 700 veces y en caso no encuentre el producto (por ser un producto nuevo) que ponga un 0, considerando que los valores en caso se copien tendrían que ser con copiado especial solo valores.
disculpen lo largo del post, espero se entienda y me puedan ayudar.
gracias