Visual Basic para Aplicaciones - Recorrer un rango de celdas no alineadas referenciadas con un nombre

Life is soft - evento anual de software empresarial
   
Vista:

Recorrer un rango de celdas no alineadas referenciadas con un nombre

Publicado por Carlos (2 intervenciones) el 19/11/2014 16:19:53
Hola,

dentro de mi hoja Excel tengo definidos varios rangos de celdas no alineadas (p.ej. a7:b14;c6:e32;e4:f12) agrupadas bajo un nombre (subconjunto). Necesitaría navegar estas celdas para poder rellenarlas con un valor correspondiente si se cumple una condición. Es decir, necesito navegar el rango como si fuera un array de celdas, poniendo el puntero en las sucesivas 1 a 1 y rellenándolas hasta el valor que me especifique el límite obtenido mediante una variable. Algo como:
for x = 1 to x = max /siendo max <= que el número de celdas en el array.
subconjunto(x) = "F" /siendo subconjunto el nombre dado al rango de celdas y x el puntero ordenado de cada celda


¿A alguien se le ocurre como hacerlo?

Gracias
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
Imágen de perfil de JuanC

Recorrer un rango de celdas no alineadas referenciadas con un nombre

Publicado por JuanC juanc2942@gmail.com (431 intervenciones) el 19/11/2014 17:16:08
una forma de hacerlo... (dependiendo de qué necesites servirá o no, podría hacerse también mediante un array)

1
2
3
4
5
6
7
8
Sub test()
Dim x&
Dim cell As Range
For Each cell In Range("subconjunto")
    cell.Value = x
    x = x + 1
Next
End Sub

Saludos, desde Baires, JuanC
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

Recorrer un rango de celdas no alineadas referenciadas con un nombre

Publicado por Carlos (2 intervenciones) el 24/11/2014 17:25:20
JuanC,

muchas gracias por tu respuesta. He tratado de implementarlo en el código VBA de mi fichero, pero da un error de compilación VBA. Parece ser que no le "sienta" muy bien la referencia al rango. El nombre del rango está definido dentro como xWAN dentro del administrador de nombres y tiene esta vista
=$EO$4:$FB$4;$EN$5:$FB$5;$EN$6:$FA$6;$EM$7:$FA$7;$EM$8:$EZ$8;$EL$9:$EZ$9;$EL$10:$EY$10;$EK$11:$EY$11;$EK$12:$EX$12;$EJ$13:$EX$13;$EJ$14:$EW$14;$EI$15:$EW$15;$EI$16:$EV$16;$EH$17:$EV$17;$EH$18:$EU$18;$EG$19:$EU$19;$EG$20:$ET$20;$EF$21:$ET$21;$EF$22:$ES$22;$EE$23:$ES$23;$EE$24:$ER$24;$ED$25:$ER$25;$ED$26:$EQ$26;$EC$27:$EQ$27;$EC$28:$EP$28;$EB$29:$EP$29;$EB$30:$EO$30;$EA$31:$EO$31;$DZ$35:$FF$35;$DY$36:$FE$36;$DY$37:$FE$37;$DX$38:$FD$39;$DY$40:$FC$41;$DZ$42:$FB$43;$EB$44:$FA$45;$EC$46:$EZ$46;$EE$47:$EZ$47;$EG$48:$EY$48
Quizá es demasiado largo o demasiado heterogéneo.
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
Imágen de perfil de JuanC

Recorrer un rango de celdas no alineadas referenciadas con un nombre

Publicado por JuanC juanc2942@gmail.com (431 intervenciones) el 25/11/2014 00:45:15
no sé cuál será el error, yo lo probé con ese rango y anduvo perfecto...

Saludos, desde Baires, JuanC
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