SELECCIONAR IMAGENES ???

23/12/2008 - 03:01 por Orfao | Informe spam
HOLA GRUPO !
Tengo un libro con cerca de 200 hojas y en cada una de ellas tengo
insertadas varias imagenes en el rango a14:n43 (es decir: en algunas hojas
puede ser una sola imagen que abarque ese rango o en otras hojas pueden ser
cuatro o mas imagenes tambien acomodadas que abarcan ese rango)
adicionalmente tengo otras imagenes (Bastantes) y objetos en cada hoja .
La pregunta es : Como a travez de codigo seleccionar solamente las que esten
en el rango a14:n43 para poder moverlas a otra hoja y reemplazarlas por otro
grupo de imagenes de igual dimension (arreglo) ???
GRacias de antemano.
Me alimento del conocimiento de todos

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
23/12/2008 - 05:37 | Informe spam
hola, moises !

Tengo un libro con cerca de 200 hojas y en cada una de ellas tengo insertadas varias imagenes en el rango a14:n43
(... en algunas hojas puede ser una sola imagen... en otras hojas pueden ser cuatro o mas... acomodadas que abarcan ese rango)
adicionalmente tengo otras imagenes (Bastantes) y objetos en cada hoja.
... Como a travez de codigo seleccionar solamente las que esten en el rango a14:n43 para
... moverlas a otra hoja y reemplazarlas por otro grupo de imagenes de igual dimension (arreglo) ???



1) considera que excel no es una aplicacion para gestionar "catalogos con imagenes" (para eso hay aplicaciones de diseno grafico)

2) considera tambien que al incrustar objetos en las hojas, puede llegar el momento en que el numero de objetos sea "suficiente"...
como para poner en riesgo la integridad/rendimiento/... de ese archivo

3) considera ademas que los objetos incrustados no son "parte" de las celdas (andan "flotando" por la capa de dibujo de las aplicaciones)
o sea, podrias preguntar por la propiedad "TopLeftCell" para determinar en que celda esta la esquina superior izquierda del objeto
pero... (obviamente) se requiere de un loop que recorra (todos ?) los objetos incrustados, y si como comentas son de 1 a 'n'... -???-

el siguiente ejemplo elimina los objetos "Shape" si su propiedad (TopLeftCell) dice que esta/n en la celda C5

Dim Fig As Shape
For Each Fig In ActiveSheet.Shapes
If Fig.TopLeftCell.Address = "$C$5" Then Fig.Delete
Next

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Orfao
23/12/2008 - 06:15 | Informe spam
Gracias Hector.

La idea era mas o menos lo siguiente :
si selecciono el rango a14:n43 lo copio y pego en otra celda p.e. a60
perfecto, ya tengo la copia que necesito, pero luego no hallo la forma de
eliminar las imagenes originales de a14:n43
lo hago de otra forma :
corto a14:n43 y pego en a60 y listo !! pero tengo que volver a dar formatos
a los bordes de a14:n43 (es algo asi como el marco de las imagenes).. no
crees que habria otra forma o manera de hacerlo sin necesidad de loops ???
porque solo tengo (hasta donde yo se ) borar comentarios, borrar contenido o
borrar todo, es esto cierto ??? o acaso via vba existe ese otro metodo ???
Me alimento del conocimiento de todos
Respuesta Responder a este mensaje
#3 Héctor Miguel
23/12/2008 - 06:38 | Informe spam
hola, moises !

La idea era mas o menos lo siguiente :
si selecciono el rango a14:n43 lo copio y pego en otra celda p.e. a60 perfecto, ya tengo la copia que necesito
pero luego no hallo la forma de eliminar las imagenes originales de a14:n43
lo hago de otra forma:
corto a14:n43 y pego en a60 y listo !!
pero tengo que volver a dar formatos a los bordes de a14:n43 (es algo asi como el marco de las imagenes)..
no crees que habria otra forma o manera de hacerlo sin necesidad de loops ???
porque solo tengo (hasta donde yo se) borar comentarios, borrar contenido o borrar todo, es esto cierto ???
o acaso via vba existe ese otro metodo ???



(perdon que insista, pero...) si las imagenes estan flotando en la capa de dibujo de las aplicaciones
y la unica forma de "vincularlas" con alguna celda es por las propiedades "TopLeftCell" y "BottomRightCell"
y ademas cuentan con propiedades propias (como SI/NO mover y cambiar de tamano junto con las celdas)...

op1: (creo la mas barata) usa la opcion de "cortar" y con la macro que insertas las nuevas imagenes pones de nuevo los bordes

op2: otra alternativa es que borres "manualmente y a ojo de buen cubero" las imagenes que ya no necesites :((

op3: o que hagas uso de los loops via macro que (hasta donde se) no existe ninguna via alterna (ni por macros)

saludos,
hector.
Respuesta Responder a este mensaje
#4 Orfao
23/12/2008 - 06:49 | Informe spam
Gracias Hector !
Quedo claro.
Saludos.
Me alimento del conocimiento de todos


"Héctor Miguel" wrote:

hola, moises !

> La idea era mas o menos lo siguiente :
> si selecciono el rango a14:n43 lo copio y pego en otra celda p.e. a60 perfecto, ya tengo la copia que necesito
> pero luego no hallo la forma de eliminar las imagenes originales de a14:n43
> lo hago de otra forma:
> corto a14:n43 y pego en a60 y listo !!
> pero tengo que volver a dar formatos a los bordes de a14:n43 (es algo asi como el marco de las imagenes)..
> no crees que habria otra forma o manera de hacerlo sin necesidad de loops ???
> porque solo tengo (hasta donde yo se) borar comentarios, borrar contenido o borrar todo, es esto cierto ???
> o acaso via vba existe ese otro metodo ???

(perdon que insista, pero...) si las imagenes estan flotando en la capa de dibujo de las aplicaciones
y la unica forma de "vincularlas" con alguna celda es por las propiedades "TopLeftCell" y "BottomRightCell"
y ademas cuentan con propiedades propias (como SI/NO mover y cambiar de tamano junto con las celdas)...

op1: (creo la mas barata) usa la opcion de "cortar" y con la macro que insertas las nuevas imagenes pones de nuevo los bordes

op2: otra alternativa es que borres "manualmente y a ojo de buen cubero" las imagenes que ya no necesites :((

op3: o que hagas uso de los loops via macro que (hasta donde se) no existe ninguna via alterna (ni por macros)

saludos,
hector.



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