Problema con una macro y BUSCARV

10/08/2005 - 22:28 por Mk | Informe spam
Hola a todos!!

Después de intentarlo de varias maneras y mirar varios manuales que me
he bajado no consigo resolver un problemilla que tengo, a ver si podeis
echarme una mano.

Tengo una matriz con varias columnas (matriz A), he creado una macro que
efectua varios filtros y deseo que a esta matriz se le añada una nueva
columna como resultado de escribir la fórmula BUSCARV pero cuando
ejecuto la macro no ocurre nada, simplemente me pide que localice el
fichero de donde deseo cruzar los datos (matriz B) pero luego nada, ni
siquiera me da error..

El código que tengo es el siguiente;

Range("G2").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-5],[Nombre_fichero_Matriz_B.xls]Data!B2:Z10000,14,0)"
Selection.FillDown

¿Alguna idea?

Muchas gracias

Mk

Preguntas similare

Leer las respuestas

#6 KL
14/08/2005 - 12:56 | Informe spam
Hola Mk,

Lo que falla en tu instruccion es:

1) dentro de la formula estas usando la funcion en castellano que usas la
propiedad 'FormulaR1C1'. Si quieres usar la formula en castellano deberias
usar la propiedad '.FormulaLocal', pero sera incompatible con Excel en otros
idiomas :

Range("G2").FormulaLocal = _
"=BUSCARV(B3;[Matriz_B.xls]Data!$B$2:$Z$10000;14;0)"

de lo contrario:

Range("G2").Formula = _
"=VLOOKUP(B3,[Matriz_B.xls]Data!$B$2:$Z$10000,14,0)"

2) dentro de la formula estas usando la notacion A1 mientras que usas la
propiedad 'FormulaR1C1'. Si quieres usar la notacion A1 deberias usar la
propiedad '.Formula':

Range("G2").Formula = _
"=VLOOKUP(B3,[Matriz_B.xls]Data!$B$2:$Z$10000,14,0)"

de lo contrario:

Range("G2").FormulaR1C1 = _
"=VLOOKUP(RC[-5],[Nombre_fichero_Matriz_B.xls]Data!R2C2:R10000C26,14,0)"

Saludos,
KL


"Mk" wrote in message
news:42ff11ae$
He probado de las dos maneras y no hay forma, depurando el código no
aparece ningún error y la macro se ejecuta correctamente para el resto de
operaciones (filtrado, eliminación de columnas, formateado de texto..etc)
pero el mas importante que es el añadir esa columna mediante la fórmula
buscarv no funciona.

Como le comentaba a Daniel, mis conocimientos de vb son muy limitados.
Lo he intentado con el código siguiente:

Range("G2").FormulaR1C1 = _
"=BUSCARV(B3;[Matriz_B.xls]Data!$B$2:$Z$10000;14;FALSO)"

Evidentemente aquí si que me ha dado error en la depuración.

Voy a informarme sobre lo que me comentaba Daniel en el mensaje anterior,
el objeto WorsheetFunction.

Gracias por tu ayuda. Lo sigo intentado...
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida