UN lector, a través de un comentario planteaba la manera de solventar un problema con el que, en ocasiones, nos encontramos: Modificar las dimensiones (alto y ancho) de los bocadillos de los comentarios:
Es un problema tedioso que suele ocurrir (no siempre) cuando trabajamos con paneles inmovilizados...
la solución pasaría por lanzar un procedimiento que recorra todos los comentarios de nuestra hoja y vaya asignándole a cada uno unas dimensiones definidas por nosotros..
Supongamos nos encontramos con el siguiente panorama.. y hemos descartado ir comentario por comentario de manera manual:
Añadimos el procedimiento Sub ModificarDimensionesComentarios en un módulo de nuestro proyecto de VBA:
Tras ejecutar el proceso este sería el resultado:
Otra forma igual de válida...
| ...por alguna razón todos los comentarios perdieron el ancho predeterminado y se ven como una linea, he tenido que seleccionar uno por uno y ajustarle el ancho nuevamente. hay manera de seleccionar todos los comentarios del libro y cambiarle las propiedades al mismo tiempo?... |
Es un problema tedioso que suele ocurrir (no siempre) cuando trabajamos con paneles inmovilizados...
la solución pasaría por lanzar un procedimiento que recorra todos los comentarios de nuestra hoja y vaya asignándole a cada uno unas dimensiones definidas por nosotros..
Supongamos nos encontramos con el siguiente panorama.. y hemos descartado ir comentario por comentario de manera manual:
Añadimos el procedimiento Sub ModificarDimensionesComentarios en un módulo de nuestro proyecto de VBA:
Sub ModificarDimensionesComentarios()
'Definir la hoja donde se colocarán los comentarios
Dim hojaComentarios As Worksheet, rng As Range
Set hojaComentarios = ActiveWorkbook.ActiveSheet
Set rng = Selection.SpecialCells(xlCellTypeComments)
'Extraer los comentarios si se ha seleccionado un rango
If TypeName(rng) = "Range" Then
'Establecer el rango a inspeccionar delimitando celdas con comentarios
Set rango = Intersect(rng, ActiveSheet.UsedRange)
'Recorrer todas las celdas del rango
For Each celda In rango.Cells
'Obtener el comentario de la celda
On Error Resume Next
comentario = celda.Comment.Text
'Si la celda tiene un comentario
'modificamos su Ancho y Alto
If Len(comentario) > 0 Then
celda.Comment.Shape.Width = 80
celda.Comment.Shape.Height = 40
End If
comentario = ""
On Error GoTo 0
Next celda
End If
End SubTras ejecutar el proceso este sería el resultado:
Otra forma igual de válida...
Sub DimensionarComentarios()
Dim xWs As Worksheet
Dim xComment As Comment
'recorremos las hojas del libro
For Each xWs In Application.ActiveWorkbook.Worksheets
'y dentro de cada hoja todos los comentarios
For Each xComment In xWs.Comments
' a cada comentario le cambiamos Ancho y Alto
With xComment.Shape
.Width = 80
.Height = 40
End With
Next
Next
End Sub



He intentado las dos opciones en Excel 2016 y sigue igual. No han cambiado de tamaño. Siguen como una línea
ResponderEliminarHola, qué tal estás?
EliminarUn placer saludarte igualmente.
Revisa lo que tengas por que acabo de verificar el código en Excel 2016 y funciona...
Algo tienes distinto
Saludos cordiales