
Contexto:Tengo una hoja con un desplegable con diferentes categorías. La hoja también cuenta con una tabla cuya información se actualiza dependiendo de qué categoría se seleccione en el desplegable. Algunas de las categorías producen mucho texto y requieren celdas grandes, y otras solo tienen pequeñas cantidades de texto y requieren celdas pequeñas.
Lo que estoy buscando:Lo que estoy buscando es una forma en que el tamaño de la celda se actualice automáticamente dependiendo de la cantidad de texto que haya en la celda para una categoría determinada.entiendo como hacer esto a mano,resaltando toda la página y haciendo clic en ajuste automático o haciendo doble clic en los divisores de columnas o filas. Sin embargo, me gustaría encontrar una manera de que esto suceda tan pronto como selecciono un elemento desplegable. La razón es que diferentes personas usarán esta hoja y, si no saben que necesitan actualizar manualmente los tamaños de celda, pueden perder información crítica porque la hoja está configurada para tamaños de celda pequeños y no es obvio que el texto tenga sido cortado. Por el contrario, si configuro la tabla con tamaños de celda muy grandes de forma predeterminada, cuando se selecciona una categoría que solo produce pequeñas cantidades de texto, la tabla es mucho más grande y difícil de manejar de lo necesario.
¿Alguien conoce alguna forma de que los tamaños de celda se actualicen automáticamente tan pronto como cambie la cantidad de texto que contienen?
¡Gracias!
Respuesta1
Cree una macro para actualizar el ancho de la columna cada vez que se cambie una celda de esa columna.
Las celdas cambian debido a la entrada del usuario o al recálculo de la fórmula. Usarías un tipo diferente de macro para cada tipo de cambio. El siguiente es un ejemplo típico de entradas manuales en la columnaC:
Inserte la siguiente macro de evento en el área de código de la hoja de trabajo:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("C:C")) Is Nothing Then Exit Sub
Cells(1, "C").EntireColumn.AutoFit
End Sub
Debido a que es código de hoja de trabajo, es muy fácil de instalar y automático de usar:
- haga clic derecho en el nombre de la pestaña cerca de la parte inferior de la ventana de Excel
- seleccione Ver código; esto abre una ventana de VBE
- pegue las cosas y cierre la ventana de VBE
Si tiene alguna inquietud, primero pruébelo en una hoja de trabajo de prueba.
Si guarda el libro, la macro se guardará con él. Si está utilizando una versión de Excel posterior a 2003, debe guardar el archivo como .xlsm en lugar de .xlsx.
Para eliminar la macro:
- abra las ventanas de VBE como se muestra arriba
- borrar el código
- cerrar la ventana VBE
Para obtener más información sobre las macros en general, consulte:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
y
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
Para obtener más información sobre las macros de eventos (código de la hoja de trabajo), consulte:
http://www.mvps.org/dmcritchie/excel/event.htm
¡Las macros deben estar habilitadas para que esto funcione!