COPIAR RANGO ??

07/07/2007 - 23:44 por Orfao | Informe spam
Hola Foristas...
En una macro usaba rango copy...rango select...selection.paste
y.. cambie el metodo de copiado a este
VBAProject.Hoja6.Range(Cells(X, 2), Cells(40, 2)) = Range(Cells(X + 1, 2),
Cells(41, 2))

pero no me da el mismo resultado que cuando al final le pongo .value
En el primer caso (sin ,value) que es lo que copio realmente???


Me alimento del conocimiento de todos

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
08/07/2007 - 04:34 | Informe spam
hola, moises !

__ 1__
En una macro usaba rango copy...rango select...selection.paste


__ 2 __
y.. cambie el metodo de copiado a este
VBAProject.Hoja6.Range(Cells(X, 2), Cells(40, 2)) = Range(Cells(X + 1, 2), Cells(41, 2))
pero no me da el mismo resultado que cuando al final le pongo .value


__ 3 __
En el primer caso (sin ,value) que es lo que copio realmente???



1) cuando utilizas los metodos: <rango>.copy -> <rango>.paste
o lo que es lo mismo: <rango origen>.copy destination:=<rango destino>
estas copiando *todo* -> valores/formulas/formatos/...

2) la propiedad *por omision* de un objeto range es -> .value [en tanto no la cambien los creadores]
es decir, si es la que piensas usar/administrar/... no es necesario indicarla [sin embargo]...

3) cuando utilizas rangos de mas de una celda para hacerles un [como] *copiado/pegado* [pero]...
-> SIN especificar alguna propiedad [entonces] lo que estas copiando es... *nada* :-((

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Orfao
08/07/2007 - 07:52 | Informe spam
Hola Hector !
Es justo lo que me sucedia (NADA)
Bueno ... No realmente, en realidad copiaba rangos en blanco sobre los
existentes
es decir por EJ:
si de A1 hasta A5 tenia 1,2,3,4,5
cuando copiaba desde A2:A5 hasta A1:A4 me sustituia los valores 1,2,3,4 por
nada
aunque no estoy seguro de si era similar a un 'cleancontents' o las llenaba
con "" ???
...Lo cierto es que me aclaraste una duda (nuevamente !) GRACIAS MIGUEL.


Me alimento del conocimiento de todos


"Héctor Miguel" wrote:

hola, moises !

__ 1__
> En una macro usaba rango copy...rango select...selection.paste
__ 2 __
> y.. cambie el metodo de copiado a este
> VBAProject.Hoja6.Range(Cells(X, 2), Cells(40, 2)) = Range(Cells(X + 1, 2), Cells(41, 2))
> pero no me da el mismo resultado que cuando al final le pongo .value
__ 3 __
> En el primer caso (sin ,value) que es lo que copio realmente???

1) cuando utilizas los metodos: <rango>.copy -> <rango>.paste
o lo que es lo mismo: <rango origen>.copy destination:=<rango destino>
estas copiando *todo* -> valores/formulas/formatos/...

2) la propiedad *por omision* de un objeto range es -> .value [en tanto no la cambien los creadores]
es decir, si es la que piensas usar/administrar/... no es necesario indicarla [sin embargo]...

3) cuando utilizas rangos de mas de una celda para hacerles un [como] *copiado/pegado* [pero]...
-> SIN especificar alguna propiedad [entonces] lo que estas copiando es... *nada* :-((

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.



Respuesta Responder a este mensaje
#3 Héctor Miguel
08/07/2007 - 08:25 | Informe spam
hola, moises !

si de A1 hasta A5 tenia 1,2,3,4,5
cuando copiaba desde A2:A5 hasta A1:A4 me sustituia los valores 1,2,3,4 por nada
aunque no estoy seguro de si era similar a un 'cleancontents' o las llenaba con "" ???



[segun parece] es el equivalente del 'clearcontents' :))

prueba repitiendo la prueba, pero antes, usa las siguientes funciones de comprobacion:
[B1] =eslanco(a1)
[C1] =estexto(a1)
[D1] =esnumero(a1)
[E1] =largo(a1)
[F1] ¡=""

-> copia B1:F1 al resto de las filas
-> repite el *copiado* [sin propiedad especifica]
-> revisa los cambios reportados por las funciones

a) la columna 'B' cambia a *verdadero* [la celda ha quedado en blanco]
al igual que la columna 'F' reporta *verdadero* -como si hubiera una cadena *vacia*- [sin embargo]

b) si pones [p.e.] en 'A1' la formula =""
la columna 'B' cambia a *falso*
la columna 'C' cambia a *verdadero* [PERO]...
la columna 'F' *sigue* reportando *verdadero* [solo que *ahora si*... existe una cadena *vacia*] -???-

-> cuestion de *enfoque* :))

saludos,
hector.
Respuesta Responder a este mensaje
#4 Orfao
08/07/2007 - 21:06 | Informe spam
Hola miguel !
Gracias de nuevo...Ciertamente es asi... JE, JE,...
Lo cierto es que converti todo el codigo anterior de mi trabajo a un "arroz
con mango" , tendre que chequear todas las instrucciones de copiado
nuevamente...(Eso me pasa por estar inventando lo inventado)...
Es bueno contar siempre con Expertos !!! (Like You)..

Me alimento del conocimiento de todos


"Héctor Miguel" wrote:

hola, moises !

> si de A1 hasta A5 tenia 1,2,3,4,5
> cuando copiaba desde A2:A5 hasta A1:A4 me sustituia los valores 1,2,3,4 por nada
> aunque no estoy seguro de si era similar a un 'cleancontents' o las llenaba con "" ???

[segun parece] es el equivalente del 'clearcontents' :))

prueba repitiendo la prueba, pero antes, usa las siguientes funciones de comprobacion:
[B1] =eslanco(a1)
[C1] =estexto(a1)
[D1] =esnumero(a1)
[E1] =largo(a1)
[F1] ¡=""

-> copia B1:F1 al resto de las filas
-> repite el *copiado* [sin propiedad especifica]
-> revisa los cambios reportados por las funciones

a) la columna 'B' cambia a *verdadero* [la celda ha quedado en blanco]
al igual que la columna 'F' reporta *verdadero* -como si hubiera una cadena *vacia*- [sin embargo]

b) si pones [p.e.] en 'A1' la formula =""
la columna 'B' cambia a *falso*
la columna 'C' cambia a *verdadero* [PERO]...
la columna 'F' *sigue* reportando *verdadero* [solo que *ahora si*... existe una cadena *vacia*] -???-

-> cuestion de *enfoque* :))

saludos,
hector.



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