Excel Pega graficos no deseados

19/01/2010 - 18:58 por Hector | Informe spam
Hola Grupo,

Con una consulta, he estado trabajando un archivo a traves de unas
macros en la que recorro las hojas de mi "archivo origen" y copio una
grafica (como imagen) que se encuentra en cada hoja y luego la pego
en mi "archivo destino".

Mi problema es que Excel copia la grafica de la hoja que corresponde,
pero cuando pega en el archivo destino, pega todas las graficas que ya
ha copiado en el bucle.

Es decir, de 10 repeticiones, en la hoja 1 me pega 1 grafica (la 1),
en la hoja 2 me pega dos graficas (1 y 2), en la 3, pega 3 graficas
(1,2,3) así sucesivamente.

He intentado usando "Application.CutCopyMode = False" luego de cada
repetición, pero siempre pega las otras graficas. Tambien intente
forzar el vaciado del portapapeles y aun asi no me funciono. No se si
alguien me pueda colaborar a solucionar este problema.

De antemano gracias por la ayuda.

El codigo que poseo es el siguiente:

For x = 1 to 10
sheets(x).select
Windows("ArchivoOrigen.xls").Activate
ActiveSheet.ChartObjects("ChartShare").Activate
ActiveChart.CopyPicture Appearance:=xlScreen, Size:=xlScreen,
Format:=xlPicture
Windows("ArchivoDestino").Activate
Range("C48").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Next x
 

Leer las respuestas

#1 Héctor Miguel
20/01/2010 - 06:09 | Informe spam
hola, Hector !

... he estado trabajando un archivo a traves de unas macros en la que
recorro las hojas de mi "archivo origen" y copio una grafica (como imagen)
que se encuentra en cada hoja y luego la pego en mi "archivo destino".



1) revisa (la fraccion d)el codigo que expones, porque en el bucle (for x = 1 to 10)
NO estas "recorriendo las hojas del archivo de origen"
solo recorres las hojas en el archivo "de destino" (?)

Mi problema es que Excel copia la grafica de la hoja que corresponde
pero cuando pega en el archivo destino, pega todas las graficas que ya ha copiado en el bucle.
... de 10 repeticiones, en la hoja 1 me pega 1 grafica (la 1), en la hoja 2 me pega dos graficas (1 y 2)
en la 3, pega 3 graficas (1,2,3) así sucesivamente.
He intentado usando "Application.CutCopyMode = False" luego de cada repeticion, pero siempre pega las otras graficas.
Tambien intente forzar el vaciado del portapapeles y aun asi no me funciono.
No se si alguien me pueda colaborar a solucionar este problema.



2) no conozco de alguna forma en que el portapapeles "acumule" varias acciones de "copiar" SIN sustituir las anteriores (?)
prueba agregando una linea de "copiado" JUSTO ANTES del ".cutcopymode = false" (pero) copiando primero alguna celda vacia (p.e.)

de:
Application.CutCopyMode = False

a:
Range("iv65536").Copy
Application.CutCopyMode = False

saludos,
hector.

__ el codigo expuesto (fraccion) __
For x = 1 to 10
sheets(x).select
Windows("ArchivoOrigen.xls").Activate
ActiveSheet.ChartObjects("ChartShare").Activate
ActiveChart.CopyPicture Appearance:=xlScreen, Size:=xlScreen, Format:=xlPicture
Windows("ArchivoDestino").Activate
Range("C48").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Next x

Preguntas similares