2011-12-22 21 views
5

¿Hay alguna manera de autoajustar todas las columnas en la hoja de apertura que contienen datos? Estoy buscando una solución que no dependa de las modificaciones en un determinado archivo de Excel, pero que funcione en todos los archivos de Excel y se ejecute en el inicio de Excel.Excel: ¿cómo autoajustar columnas en el inicio?

Respuesta

6

Puede usar un módulo de objeto que recibirá un evento de aplicación (vea más información en Chip Pearson's website).

Este es el código que tiene que copiar y pegar al módulo ThisWorkbook del archivo PERSONAL.XLSB:

Option Explicit 

Private WithEvents App As Application 

Private Sub Workbook_Open() 
    Set App = Application 
End Sub 

Private Sub App_WorkbookOpen(ByVal Wb As Workbook) 
    'Statement to show that it works 
    MsgBox "Opened Workbook: " & Wb.Name 
    'Statement to autofit columns 
    ActiveSheet.UsedRange.Columns.AutoFit 
End Sub 

También podría añadir un bucle sobre las hojas de trabajo.

+1

Creo que será necesario un Cuaderno de trabajo de captura de eventos de aplicación de módulo de clase para que el código se active para cada archivo de Excel (esto se escribe en el mismo enlace desde el sitio de Pearson). – brettdj

+0

Copié pegado este nuevo Módulo de clase y lo guardé en mi personal.xlsb. Pero cuando abro un archivo de Excel guardado, no pasa nada y las columnas no son automáticas. – jrara

+1

¿Revisaste el enlace y seguiste las instrucciones dadas por brettj? – JMax

Cuestiones relacionadas