VBA Excel: selección de un rango variable

Resuelto
Pyanitsa -  
 Mima -
Hola a todos,

Debo seleccionar un rango de celdas en función de una variable i, que representa el número de la fila deseada. Tras investigar en ccm.net y otros foros, encontré el siguiente código:

Dim MiRango As Range MiRango = Range("A" & i & ":L" & i)


Estoy en Excel 2003 y algo no cuadra: VBA me devuelve "error de ejecución 91: variable de objeto o variable de bloque With no definida". De verdad, no entiendo. ¿Alguien tiene una idea?

Gracias de antemano,
Pyanitsa.

Configuración: Windows XP / Firefox 3.6.3

7 respuestas

thev Mensajes publicados 2005 Fecha de registro   Estado Miembro Última intervención   722
 
Range("A" & i & ":L" & i) representa un rango de celdas, es decir, un "objeto Excel" al igual que un libro, una hoja, una celda.
Para asignar una variable (= MiRango) a un objeto, hay que utilizar la instrucción SET.

Dicho esto, para asignar tu variable de rango de celdas, prefiero la instrucción:

set MiRango = Columns("A:L").Rows(i)

que me parece más legible.
32
Pyanitsa
 
Nickel, ¡muchas gracias, Thev! Pero, ¿por qué era necesario el 'set'? (yo apenas estoy comenzando en programación)
2
RAMIREZ
 
MRC, amigo, he evitado ser un robot gracias a eso.
0
Mima
 
Muchas gracias, un método simple, pero efectivo.
0