Ayuda con código de macro

01/10/2008 - 01:32 por Mk | Informe spam
Hola!

De verdad que no lo entiendo...mi nivel de conocimiento en vb es muy
básico pero he estado haciendo pruebas y mirando por internet y no
encuentro la razón por la que me aparece siempre un error cuando ejecuto
una parte de una macro muy sencilla.

Escribo el código:

Rem Definimos el Nombre del artículo

Range("H4").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(R3C6,'C:\Seguimiento Comercial x Artículo
2009\BBDD\FY 09\[BAYPA.xls]Todos pvp'!C1:C2,2,0)"

Rem Definimos el Ba del artículo

'Range("K4").Select
'ActiveCell.FormulaR1C1 = _
' "=VLOOKUP(R3C6,'C:\Seguimiento Comercial x Artículo
2009\BBDD\FY 09\[BAYPA.xls]Todos pvp'!C1:C11,11,0)"

Rem Definimos el Pa del artículo

'Range("N4").Select
'ActiveCell.FormulaR1C1 = _
' "=VLOOKUP(R3C6,'C:\Seguimiento Comercial x Artículo
2009\BBDD\FY 09\[BAYPA.xls]Todos pvp'!C1:C13,13,0)"

Aparentemente lo único que hace esta parte de la macro es que en las 3
celdas anteriores (H4, K4 y N4) escribe la función Buscarv. Siempre que
la ejecuto me aparece un mensaje de error que dice:

"Recursos insuficientes. Seleccione menos datos o cierre aplicaciones."

Pues bien, acepto el mensaje, elijo la opción de depurar y siempre me
dirige al código de K4 ó en su defecto N4. Si anulo ese código funciona
correctamente por ejemplo en H4 y no me muestra ningún error.

Algo que tampoco entiendo es que abro el fichero que contiene la fuente
de datos y aparentemente todo está ok pero al intentar cerrarlo me
aparece de nuevo la ventana con el mensaje anterior.

Quizás la solución es algo muy simple para alguien que controla del tema
pero a mí me tiene desquiciado, ¿me podéis dar alguna idea?.

Muchas gracias y perdón por el ladrillo.

Mkastur
 

Leer las respuestas

#1 Héctor Miguel
01/10/2008 - 02:29 | Informe spam
hola, 'anonimo/a' !

1) si estas aplicando la propiedad ".FormulaR1C1"
no deberias indicar el rango donde esta la tabla en el mismo estilo de notacion ? (R1C1)
porque en el codigo estas depositando una formula con estilos de referencias "combinadas"
- el dato que se busca... -> R3C6
- la tabla donde se busca > C1:C11 <= esta deberia ser en el mismo estilo: => R1C3:R11C3

2) OJO... si la tabla donde se busca incluye UNA SOLA COLUMNA (C1:C11 C1:C13)
como es que solicitas en devolucion el dato de la columna 2, 11 o 13 ??????

saludos,
hector.

__ OP __
De verdad que no lo entiendo...mi nivel de conocimiento en vb es muy basico pero he estado haciendo pruebas y mirando por internet
y no encuentro la razon por la que me aparece siempre un error cuando ejecuto una parte de una macro muy sencilla.
Escribo el codigo:

Rem Definimos el Nombre del articulo
Range("H4").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(R3C6,'C:\Seguimiento Comercial x Articulo 2009\BBDD\FY 09\[BAYPA.xls]Todos pvp'!C1:C2,2,0)"

Rem Definimos el Ba del artículo
'Range("K4").Select
'ActiveCell.FormulaR1C1 = _
' "=VLOOKUP(R3C6,'C:\Seguimiento Comercial x Articulo 2009\BBDD\FY 09\[BAYPA.xls]Todos pvp'!C1:C11,11,0)"

Rem Definimos el Pa del artículo
'Range("N4").Select
'ActiveCell.FormulaR1C1 = _
' "=VLOOKUP(R3C6,'C:\Seguimiento Comercial x Articulo 2009\BBDD\FY 09\[BAYPA.xls]Todos pvp'!C1:C13,13,0)"

Aparentemente lo unico que hace esta parte de la macro es que en las 3 celdas anteriores (H4, K4 y N4)
escribe la funcion Buscarv. Siempre que la ejecuto me aparece un mensaje de error que dice:
"Recursos insuficientes. Seleccione menos datos o cierre aplicaciones."

Pues bien, acepto el mensaje, elijo la opcion de depurar y siempre me dirige al codigo de K4
o en su defecto N4. Si anulo ese codigo funciona correctamente por ejemplo en H4 y no me muestra ningun error.

Algo que tampoco entiendo es que abro el fichero que contiene la fuente de datos y aparentemente todo esta ok
pero al intentar cerrarlo me aparece de nuevo la ventana con el mensaje anterior.

Quizas la solucion es algo muy simple para alguien que controla del tema pero a mi me tiene desquiciado, me podeis dar alguna idea?.

Preguntas similares