VBA Excel: selección de un rango variable
Resuelto
Pyanitsa
-
Mima -
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:
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
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
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.
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.
Pyanitsa
Nickel, ¡muchas gracias, Thev! Pero, ¿por qué era necesario el 'set'? (yo apenas estoy comenzando en programación)
RAMIREZ
MRC, amigo, he evitado ser un robot gracias a eso.
Mima
Muchas gracias, un método simple, pero efectivo.