Excel - Favor Ayuda Urgente. Macro con Buscarv

 
Vista:
sin imagen de perfil

Favor Ayuda Urgente. Macro con Buscarv

Publicado por Patricio (18 intervenciones) el 08/05/2007 16:26:25
Amigos:

Por favor ayúdenme con el código correcto para poder ejecutar una Macro:

Sub Macro1()

Range("I4").Select
ActiveCell.FormulaR1C1 = _
"=+VLOOKUP(RC[-4],'[Libro 1.xls]Hoja 1'!C2:C8,7,0)"

End Sub

El código recién expuesto lo que hace es colocar de manera automática en la celda I4 un buscarv. Los datos a buscar y traer están en el "Libro 1.xls", "Hoja 1".

Mi intención es que al ejecutar la macro la función buscarv vaya a buscar los datos al libro activo del momento, que no será siempre el "Libro 1.xls", "Hoja 1". Puede ser por ejemplo "Libro 10.xls", "Hoja 6". Con el código siguiente traté de hacerlo pero no me funciona:

Sub Macro1()

Dim NombreLibro As String
Dim NombreHoja As String

NombreLibro = ActiveWorkbook.Name
NombreHoja = ActiveSheet.Name
Range("I4").Select
ActiveCell.FormulaR1C1 = _
"=+VLOOKUP(RC[-4],'[NombreLibro]NombreHoja'!C2:C8,7,0)"

End Sub

Este código guarda el nombre del libro en una variable y el nombre de la hoja en otra. Eso lo hace corectamente, pero no he podido lograr reemplazar correctamente los valores absolutos dentro del código "=+VLOOKUP(RC[-4],'[Libro 1.xls]Hoja 1'!C2:C8,7,0)" por el contenido que tienen las variables en el momento (por ejemplo "Libro 10.xls", "Hoja 6").

Por favor necesito ayuda para resolver este problema. Tal vez estoy cometiendo un error en la sintaxis o algo similar, pero no he podido resolverlo.

Gracias a quiénes me puedan dar respuesta.
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:Favor Ayuda Urgente. Macro con Buscarv

Publicado por haver (149 intervenciones) el 08/05/2007 16:40:41
"=+VLOOKUP(RC[-4],'[" & NombreLibro & "]" & NombreHoja & "'!C2:C8,7,0)"

(Lo que sucede es que una variable la tienes que mantener como tal o sea cuando pones algo entre comillas es un TEXTO aun sea una variable declarada, por eso cierras las comillas y concatenas con el & para que lea el valor de la variable y despues abres las comillas " para la continuacion y le pones un concatenador para que entienda que es una sola linea)

Cambialo por esta linea y me cuentas
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
sin imagen de perfil

RE:Favor Ayuda Urgente. Macro con Buscarv

Publicado por Patricio (18 intervenciones) el 08/05/2007 21:51:33
Haver:

Ha funcionado a la perfección. Te agradezco enormemente tu ayuda. La verdad es que no soy aun muy experto en el tema y siempre me ha complicado el tema de la sintaxis, sobretodo cuando hay que reemplazar valores absolutos por variables en fórmulas.

Gracias nuevamente.
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:Favor Ayuda Urgente. Macro con Buscarv

Publicado por carlos augusto (76 intervenciones) el 08/05/2007 23:30:13
usa esta sentencia.
var = application.WorksheetFunction.VLookup(arg1, arg2, arg3, arg4)

luego vincula la variable a la celda que necesites...
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:Favor Ayuda Urgente. Macro con Buscarv

Publicado por Tatiana (1 intervención) el 06/05/2010 16:38:25
Hooola a todos!

Tengo una consulta con respecto a la estructura buscarv: Lo que yo necesito es variar en la estructura de la función el indicador de columnas, es decir, el valor que me devuelve el buscar una vez encontrado el valor deseado es variable, en la siguiente estructura, sería por ejm que en lugar de el número 7, se incorpore una variable antes definida y con un valor ya asignado. Este problema es tambien de sintaxis...

"=+VLOOKUP(RC[-4],'[NombreLibro]NombreHoja'!C2:C8,7,0)"

Muchas gracias a quien me pueda ayudar.
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