Tengo una celda con contenido de texto envuelto en Excel y quiero formatear la celda para que su altura se ajuste al contenido que puede abarcar varias líneas. ¿Cómo puedo lograr este comportamiento?
Tengo una celda con contenido de texto envuelto en Excel y quiero formatear la celda para que su altura se ajuste al contenido que puede abarcar varias líneas. ¿Cómo puedo lograr este comportamiento?
Respuestas:
Desde http://support.microsoft.com/kb/149663
Para ajustar la altura de la fila para que se ajuste a todo el texto en una celda, siga estos pasos:
Selecciona la fila.
En Microsoft Office Excel 2003 y en versiones anteriores de Excel, seleccione Fila en el menú Formato y luego haga clic en Autoajuste.
En Microsoft Office Excel 2007, haga clic en la pestaña Inicio, haga clic en Formato en el grupo Celdas y luego haga clic en Ajustar altura de fila.
También funciona cuando se seleccionan todas las filas
Tratar
Seleccione la columna -> columna de clic derecho -> Formato de celdas -> pestaña Alineación -> Ajustar texto
Wrap Text
y desactiva de nuevo, Excel cambiará el tamaño de la altura de la fila para que se ajuste a la fila más alta. No es adecuado si la altura de las filas cambia dinámicamente, pero si se trata de texto estático, debería estar bien.
Tenga en cuenta que el ajuste automático no funciona en celdas combinadas. Tienes que hacerlo de forma manual.
Vea esta respuesta de Microsoft:
No puede usar la función Autoajuste para filas o columnas que contienen celdas combinadas en Excel
Si no lo hace automáticamente, coloque el cursor sobre la línea pequeña entre los números de fila (ej .: entre 1 y 2) y haga doble clic, esto redimensionará la fila (directamente sobre la línea pequeña, en el ejemplo: 1) para que todo sea visible (desde un aspecto vertical).
Una solución de VBA es usar lo siguiente:
Call Application.ActiveCell.AutoFit
La única forma en que puedo hacer que funcione como se espera es resaltar toda la hoja con CTRL-A, desmarcar el botón "Ajustar texto" en la barra de herramientas y luego volver a seleccionarlo. Ninguna otra configuración cambia, pero cada fila tiene ahora la altura "adecuada" para su contenido.
Creé el siguiente código VB para cambiar el tamaño de la fila del encabezado cuando una celda dentro de un rango (B2: B1500) porque los valores de fecha superiores al 28/12/2014 harían que el encabezado mostrara una advertencia de que estas fechas, en una hoja de tiempo, entrarían Semana1 de 2015:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
' The variable KeyCells contains the cells that will
' cause an Action when they are changed.
Set KeyCells = Range("B2:B1500")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
' Change the height of the header row when one of the defined cdlls is changed
Rows("1:1").EntireRow.AutoFit
End If
End Sub