macro para comprimir imágenes insertadas

27/04/2010 - 02:04 por Zoltar | Informe spam
Estimados Cibernautas:

Saben cual es la instrucción en VBA para comprimir una imagen inserta
en una hoja en excel 2003?.

desde ya, muchas gracias

Atte

Zoltar

Preguntas similare

Leer las respuestas

#6 Zoltar
03/05/2010 - 15:14 | Informe spam
On 1 mayo, 23:57, "Héctor Miguel"
wrote:
hola, !

> No conozco el metodo "sendkeys"... lo pudieras explicar o darme un Link para obtener mayor informacion...

1) al mostrar un cuadro de dialogo (como el de comprimir imagenes)
    encuentras controles de varios tipos (combos, opciones, referencia, verificacion, etc.)
    y textos con un caracter subrayado (llamamdos aceleradores) que sirven para "navegar" por el dialogo
    (p.e. para llegar rapidamente a un control usando el teclado en lugar del raton)
    OJO: el caracter dependera del idioma de la aplicacion propietaria del cuadro de dialogo

2) el metodo "sendkeys" es la instruccion vba para enviar "pulsaciones de teclado" a la aplicacion PERO...
    dicha pulsacion NO se envia inmediatamente, sino que se suspende hasta que se termina el codigo de la macro
    o... cuando la siguiente instruccion al "sendkeys" muestra un dialogo que "demande" la interaccion del usuario
    (esta es una de las razones por las que el metodo sendkeys es considerado como "inestable" o poco confiable)

-> consulta la ayuda en linea {F1} de vba/excel para conocer las referencias a teclas especiales (tab, enter, {F1}..., etc.)
   http://msdn.microsoft.com/en-us/lib...78027.aspx
   http://support.microsoft.com/kb/110891/es
   http://social.msdn.microsoft.com/Se...l+sendkeys

3) hablando del dialogo de comprimir imagenes, hay 2 secciones con botones de opcion y 1 con casillas de verificacion
    los aceleradores intercambian la seleccion de los botones de opcion y/o la (des/re)activacion de las casillas de verificacion
    (en espanol) si pretendes activar las opciones: (S1) todas las imagenes, (S2) en web o pantalla, (S3) comprimir y eliminar
    la pulsacion de teclas corresponderia a: TWCE{enter}

4) con esto en perspectiva, una macro que podria servirte (excel en espanol) seria +/- como la siguiente:

Sub ComprimirTodasLasImagenes()
  Application.SendKeys "twce~~"
  Application.CommandBars.FindControl(Id:c82).Execute
End Sub

nota un "doble {enter}" al final del metodo sendkeys: => ~~
debido al (posible) dialogo de confirmacion por bajar resolucion a las imagenes a comprimir (?)

saludos,
hector.

__ la consulta inicial __

>>> ... cual es la instruccion en VBA para comprimir una imagen inserta en una hoja en excel 2003?.

>> a que te refieres exactamente con "comprimir..." (?)
>> - comprimir un archivo como *.zip / *.rar / ... (???)
>> - o a "bajarle peso" a un archivo de excel por haberle insertado imagenes (?)

__ aclaraciones __



>> Me refiero a "bajarle peso" al archivo usando la herramienta de compresion de todas las imagenes del libro...

> op1: mostrar el dialogo para la compresion de imagenes y dos alternativas (la macro continuaria despues de...):
> a) dejar que el usuario haga los ajustes pertinentes
> b) arriesgarte con el metodo "sendkeys" con las pulsaciones apropiadas y previo a mostrar el dialogo
> (podria variar segun el idioma instalado y dos o tres detallitos adicionales y "fuera de control") -?-

> op2: evitar cualquier (ab)uso de imagenes insertadas y administrar por otros mecanismos segun sea necesario
> (hay varias conversaciones anteriores por medio de un control de imagen y "direcciones" a las imagenes)

> (espero que no se trate de un "catalogo" ?, pero...)
> si cualquier duda (o informacion adicional)... comentas ?- Ocultar texto de la cita -

- Mostrar texto de la cita -



Héctor Miguel:

Muchísimas gracias por tu valiosa ayuda.

Lo probaré y te cuento cómo me fue.

Atte

Zoltar
Respuesta Responder a este mensaje
#7 Zoltar
03/05/2010 - 23:05 | Informe spam
On 3 mayo, 09:14, Zoltar wrote:
On 1 mayo, 23:57, "Héctor Miguel"
wrote:





> hola, !

> > No conozco el metodo "sendkeys"... lo pudieras explicar o darme un Link para obtener mayor informacion...

> 1) al mostrar un cuadro de dialogo (como el de comprimir imagenes)
>     encuentras controles de varios tipos (combos, opciones, referencia, verificacion, etc.)
>     y textos con un caracter subrayado (llamamdos aceleradores) que sirven para "navegar" por el dialogo
>     (p.e. para llegar rapidamente a un control usando el teclado en lugar del raton)
>     OJO: el caracter dependera del idioma de la aplicacion propietaria del cuadro de dialogo

> 2) el metodo "sendkeys" es la instruccion vba para enviar "pulsaciones de teclado" a la aplicacion PERO...
>     dicha pulsacion NO se envia inmediatamente, sino que se suspende hasta que se termina el codigo de la macro
>     o... cuando la siguiente instruccion al "sendkeys" muestra un dialogo que "demande" la interaccion del usuario
>     (esta es una de las razones por las que el metodo sendkeys es considerado como "inestable" o poco confiable)

> -> consulta la ayuda en linea {F1} de vba/excel para conocer las referencias a teclas especiales (tab, enter, {F1}..., etc.)
>    http://msdn.microsoft.com/en-us/lib...78027.aspx
>    http://support.microsoft.com/kb/110891/es
>    http://social.msdn.microsoft.com/Se...l+sendkeys

> 3) hablando del dialogo de comprimir imagenes, hay 2 secciones con botones de opcion y 1 con casillas de verificacion
>     los aceleradores intercambian la seleccion de los botones de opcion y/o la (des/re)activacion de las casillas de verificacion
>     (en espanol) si pretendes activar las opciones: (S1) todas las imagenes, (S2) en web o pantalla, (S3) comprimir y eliminar
>     la pulsacion de teclas corresponderia a: TWCE{enter}

> 4) con esto en perspectiva, una macro que podria servirte (excel en espanol) seria +/- como la siguiente:

> Sub ComprimirTodasLasImagenes()
>   Application.SendKeys "twce~~"
>   Application.CommandBars.FindControl(Id:c82).Execute
> End Sub

> nota un "doble {enter}" al final del metodo sendkeys: => ~~
> debido al (posible) dialogo de confirmacion por bajar resolucion a las imagenes a comprimir (?)

> saludos,
> hector.

> __ la consulta inicial __

> >>> ... cual es la instruccion en VBA para comprimir una imagen inserta en una hoja en excel 2003?.

> >> a que te refieres exactamente con "comprimir..." (?)
> >> - comprimir un archivo como *.zip / *.rar / ... (???)
> >> - o a "bajarle peso" a un archivo de excel por haberle insertado imagenes (?)

> __ aclaraciones __

> >> Me refiero a "bajarle peso" al archivo usando la herramienta de compresion de todas las imagenes del libro...

> > op1: mostrar el dialogo para la compresion de imagenes y dos alternativas (la macro continuaria despues de...):
> > a) dejar que el usuario haga los ajustes pertinentes
> > b) arriesgarte con el metodo "sendkeys" con las pulsaciones apropiadas y previo a mostrar el dialogo
> > (podria variar segun el idioma instalado y dos o tres detallitos adicionales y "fuera de control") -?-

> > op2: evitar cualquier (ab)uso de imagenes insertadas y administrar por otros mecanismos segun sea necesario
> > (hay varias conversaciones anteriores por medio de un control de imagen y "direcciones" a las imagenes)

> > (espero que no se trate de un "catalogo" ?, pero...)
> > si cualquier duda (o informacion adicional)... comentas ?- Ocultar texto de la cita -

> - Mostrar texto de la cita -

Héctor Miguel:

Muchísimas gracias por tu valiosa ayuda.

Lo probaré y te cuento cómo me fue.

Atte

Zoltar- Ocultar texto de la cita -

- Mostrar texto de la cita -



Héctor Miguel:

Funciona sin problemas.

Muchísimas gracias.

Atte

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