Autoajustar columnas con macros y asignar un método abreviado que esté disponible en todo los archivos de Excel

Excel tiene muchas herramientas valiosas que nos hacen ser más eficientes en Excel, pero infortunadamente no existen métodos abreviados para acceder a todas. Una de ellas es Autoajustar ancho de columna.

Grabar macro y asignarle un método abreviado

Como lo mencioné anteriormente, la herramienta Autoajustar ancho de columna no tiene un método abreviado, por lo que nos daremos a la tarea de tenerla en una macro y asignarle un método abreviado, [Ctrl] + [M]. Haremos uso de la Grabadora de macro para obtener el código, además de asignarle un método abreviado, y para que esto sea más interesante, dejaremos la combinación disponible para todos los archivos.

Video tutorial

https://youtu.be/WBVww3o7b_c

Tenemos una tabla de muestra donde vemos que el texto de las columnas es más grande que el ancho de las columnas.

Tabla de ejemplo en Excel

Figura 1. Tabla de ejemplo.

Para grabar la macro, nos vamos a Vista > Macros > Grabar macro. Primeramente asignamos el método abreviado [Ctrl] + [M] y guardamos la macro en el libro PERSONAL.

Grabar macro y asignarle un método abreviado

Figura 2. Grabar macro y asignarle un método abreviado.

Para ejecutar la herramienta Autoajustar, nos vamos a Inicio > Formato > Autoajustar ancho de columna. Una vez hecha la acción, detenemos la macro.

Autoajustar tamaño de columna en Excel

Figura 3. Autoajustar tamaño de columna en Excel.

Ahora cada vez que presionemos [Ctrl] + [M] se autoajustarán las columnas al ancho del texto.

Métodos abreviados en Excel

Figura 4. Método abreviado en Excel.

Código vba para asignar método abreviado a una macro

Mediante el método OnKey vamos a asignar un método abreviado a una macro previamente grabada. La macro grabada se llama AutoAjustar. Le hice unas adecuaciones para que detecte cuando se produzca algún error, por ejemplo que la hoja esté protegida.

Código de la macro AutoAjustar

Sub AutoAjustar()
'
Dim ErrorHandler As Error
'
On Error GoTo ErrorHandler
'
Selection.EntireColumn.AutoFit
'
Exit Sub
ErrorHandler:
MsgBox "Ha ocurrido un error: " & Err.Description & vbNewLine & vbNewLine & _
       "Procura que la hoja no esté protegida.", vbExclamation, AddIn
End Sub

Para que el método abreviado [Ctrl] + [M] esté siempre disponible usamos el siguiente código vba en un Módulo normal.

'---------------------------------------------------------------------------------------
' Module    : Módulo1
' Author    : MVP, Sergio Alejandro Campos
' Date      : 01/05/2016
' Purpose   : Métodos abreviados en Excel
'---------------------------------------------------------------------------------------

Sub Auto_Open()
Application.OnKey "^{m}", "AutoAjustar"
End Sub

Ahora usaremos Auto_Close para restaurar el método abreviado.

Sub Auto_Close()
Application.OnKey "^{m}"
End Sub

Descarga el ejemplo

Click aquí para descargar el ejemplo: Método abreviado en Excel.xlsm.

You may also like...