1 votos

Cómo obtener un tamaño más pequeño de un icono para un archivo incrustado de forma predeterminada o mediante el uso de una macro en Microsoft Excel

Estoy utilizando Microsoft Excel 2010 en Windows 7. Tengo una tarea que me obliga a mantener en la incrustación de objetos de un archivo comprimido en una celda en una hoja de cálculo Microsoft Excel cada pocos minutos.

El icono del archivo comprimido es grande y tarda hasta la altura de tres celdas adyacentes. Así que cada vez que incrustar el archivo comprimido, me clic derecho sobre el icono y, a continuación, seleccione el formato de elemento de menú del objeto, seguido por cambiar el tamaño del icono para el 50% de su tamaño original.

Es allí una manera de establecer el valor predeterminado del tamaño de un icono en Microsoft Excel? Si no es allí una manera de automatizar el procedimiento de ajuste del formato de objeto incrustado mediante una macro? He buscado mucho pero no pude encontrar nada. Traté de secuencia de comandos VBA para un objeto en particular, pero no puede hacerlo por cualquier objeto

Gracias por cualquier aporte

Edit: gracias por el comentario que me exigía a los post a la macro. Aquí está una macro que me había registrado, pero es sólo para un objeto específico que es objeto de 21. Hay varios problemas con este código que me estoy describiendo a continuación el código

Sub Reduce_size_icon() 
' 
' Reduce_size_icon Macro
' Reduce the size of the icon 
'
'
    ActiveSheet.Shapes("Object 21").LockAspectRatio = msoTrue
    ActiveSheet.Shapes("Object 21").Height = 20.25
    ActiveSheet.Shapes("Object 21").Width = 69.75 End Sub
  1. Esto es sólo para un objeto específico. Una manera tal vez un bucle a través de todos los objetos en una hoja de cálculo y, a continuación, reducir su altura. Pero si yo soy la adición de los objetos, uno por uno, la macro debe ejecutarse sólo en el último objeto y no todos los que antes de hacerlo porque ya han sido formateado, especialmente si queremos que la altura y la anchura se reduce en un 50% de las dimensiones actuales. (Véase el punto 2)
  2. sería mejor si podemos reducir la altura a la mitad en lugar de asignar valores absolutos a la altura. Esto es porque a veces me puede haber objetos de diferentes archivos y por lo tanto de diferentes tamaños de icono.
  3. Después de pasar por tu comentario, me di cuenta de que tal vez es mucho más fácil crear una macro que se incrusta automáticamente y formato de un objeto en la celda resaltada en el que se ejecuta la macro. Sin embargo, lo que queremos es que el objeto debe ser creado a partir de un archivo diferente cada vez. Por lo tanto, es posible que la macro se puede ejecutar a través de exactamente los mismos pasos de la construcción de un objeto, sino en el punto donde se le pedirá la ruta de acceso del archivo, puede detener y permitir que el usuario elija un archivo en particular?

Y, por supuesto, la forma más fácil es ser capaz de especificar el tamaño de la imagen a los valores predeterminados de manera que siempre incrusta con un tamaño más pequeño.

0voto

pat2015 Puntos 351

No estoy seguro de si hay alguna configuración en cualquier lugar en Excel que especifica el valor de tamaño de Icono para el objeto incrustado. Si es así, me gustaría saberlo. Va a hacer el trabajo muy simple.

En el momento en que acabo de sugerir una pequeña macro que va de esta.

Esto es probado en Excel 2013 y espero que se debe trabajar en Excel 2010.

En su hoja de cálculo actual de la Prensa ATL + F11 para Acceder Editor de VBA. Insertar un Módulo y, a continuación, pegue el siguiente código en ella.

Sub SelectOLE()
Dim objFileDialog As Office.FileDialog
    Set objFileDialog = Application.FileDialog(MsoFileDialogType.msoFileDialogFilePicker)

        objFileDialog.AllowMultiSelect = False
        objFileDialog.ButtonName = "Select File"
        objFileDialog.Title = "Select File"
        objFileDialog.Show

        If (objFileDialog.SelectedItems.Count > 0) Then

        Set f = ActiveSheet.OLEObjects.Add _
            (Filename:=objFileDialog.SelectedItems(1), _
              Link:=False, _
              DisplayAsIcon:=True, _
              IconLabel:=objFileDialog.SelectedItems(1), _
              Top:=ActiveCell.Top, _
              Left:=ActiveCell.Left _
             )
        f.Select
        f.Width = 18   'Adjust as per your needs
        f.Height = 18  'Adjust as per your needs

        End If

End Sub

Usted puede asignar un método abreviado de teclado para esta macro también. Guardar el archivo como .xlsm Macro Activada Libro de Excel.

Ahora cada vez que usted necesita para incrustar un objeto, primero haga clic en la celda en la que desea incrustar y ejecutar esta macro. Seleccione el archivo desde el Cuadro de Diálogo Abrir Archivo y haga Clic en el Botón Abrir.

La mejor manera de decidir la Anchura Y Altura de los parámetros según sus necesidades en el código. Sólo tenga en cuenta que este código no puede ser robusto y no han sido probados por cualquier atípicos o manejo de excepciones como tal.

Vea la captura de pantalla, ¿cómo funciona esto.

enter image description here

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X