COMO ASIGNAR VALOR ALEATORIO A UN "RANGE"

23/02/2006 - 22:56 por GENCAMEN | Informe spam
deseo saber como reasignar una valor a un RANGE("XX") hacia otro RANGE("XY")
usando variables. Estoy usando EXCEL version 2002 bajo Windows Xp

Preguntas similare

Leer las respuestas

#1 Francisco M
24/02/2006 - 17:14 | Informe spam
concatenando puedes hacerlo

por ejemplo

fila = 2
columna = "C"
range(fila & ":" & columna).value = 9

ó

fila = 2
columna = chr(64+3)
range(fila & ":" & columna).value = 9

pero yo sugeriría utilizar

fila = 2
columna = 3
range(cells(fila, columna),cells(fila,columna)).value = 9

es eso lo que andas buscando?
si fuera la fila aleatoria podría ser

range("a" & int(rnd()*100)).value = xxxx

Saludos,
Francisco.

"GENCAMEN" escribió en el mensaje
news:
deseo saber como reasignar una valor a un RANGE("XX") hacia otro
RANGE("XY")
usando variables. Estoy usando EXCEL version 2002 bajo Windows Xp
Respuesta Responder a este mensaje
#2 KL
24/02/2006 - 23:05 | Informe spam
Hola chicos,

"Francisco M" wrote
range(fila & ":" & columna).value = 9



Me temo que asi la concatenacion no va a funcionar - sobran los dos puntos ":"

columna = chr(64+3)



Esta forma me parece un derroche dado que la columna se la puede expresar como numero sin necesidad de convertirla en letra

range("a" & int(rnd()*100)).value = xxxx



- la funcion Rnd en VBA se usa sin parentesis
- esta instruccion dara error si cae un 0

Si Francisco esta en lo cierto acerca de la intencion (cosa de la que no estoy seguro), entonces la forma mas eficaz de hacerlo es
la siguiente:

Columna="C": Fila=2
Cells(Fila,Columna) = 9

Fila=2
Range("A:A")(Fila) = 9

Randomize
Range("A:A")(Int(Rnd * 65536) + 1) = 9

Saludos,
KL
Respuesta Responder a este mensaje
#3 Francisco M
28/02/2006 - 14:49 | Informe spam
gracias KL, si todos fueran asi, se aprenderia mucho mas..

saludos,
Francisco.

"KL" escribio en el mensaje
news:
Hola chicos,

"Francisco M" wrote
range(fila & ":" & columna).value = 9



Me temo que asi la concatenacion no va a funcionar - sobran los dos puntos
":"

columna = chr(64+3)



Esta forma me parece un derroche dado que la columna se la puede expresar
como numero sin necesidad de convertirla en letra

range("a" & int(rnd()*100)).value = xxxx



- la funcion Rnd en VBA se usa sin parentesis
- esta instruccion dara error si cae un 0

Si Francisco esta en lo cierto acerca de la intencion (cosa de la que no
estoy seguro), entonces la forma mas eficaz de hacerlo es la siguiente:

Columna="C": Fila=2
Cells(Fila,Columna) = 9

Fila=2
Range("A:A")(Fila) = 9

Randomize
Range("A:A")(Int(Rnd * 65536) + 1) = 9

Saludos,
KL
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida