jueves, febrero 18, 2016

Tamaño de los comentarios en Excel - macro mejorada

Las advertencias sobre la falta de control de errores en la macro de la nota anterior sobre el manejo del tamaño de los comentarios no aliviaron mi conciencia. Estoy seguro que alguno de mis lectores habrá adoptado la macro e intentado usarla para impresionar a su jefe (o, mejor aún, a su secretaria) descubriendo en el intento que si se ingresan datos incorrectos, la macro falla mostrando con poca gracia el consabido mensaje



Aquí publico una versión mejorada, con control de errores y con un formulario para ingresar los valores de la altura y el ancho del cuadro en una sola operación.

En un módulo común del editor de Vb ponemos estos códigos

Sub abrir_uf()
    ufDimensiones.Show
End Sub


Sub cambiar_dimension_comentario_3(x As Double, y As Double)

    Dim shComment As Comment

    Unload ufDimensiones

    For Each shComment In ActiveSheet.Comments
        With shComment
            .Shape.Width = x
            .Shape.Height = y
        End With

    Next shComment

End Sub



El primer código abre el formulario (Userform) donde ponemos las dimensiones deseadas para los comentarios. El segundo recibe los datos del formulario y los aplica a los comentarios.

Una vez diseñado el Userform


agregamos los códigos en el módulo del userform

Private Sub cbCancelar_Click()
    Unload ufDimensiones
End Sub

Private Sub cbAceptar_Click()
    Dim pntAltura As Double, pntAncho As Double

    On Error GoTo NoEsNumero
    With ufDimensiones
      
        pntAltura = .tbxAltura / 2.54 * 72
        pntAncho = .tbxAncho / 2.54 * 72
    
    End With
    

    Call cambiar_dimension_comentario_3(pntAltura, pntAncho)

    Exit Sub

NoEsNumero:
MsgBox "El valor ingresado no es un numero", vbCritical
MsgBox "Vuelva a intentarlo o apriete Cancelar", vbInformation

End Sub



Este video muestra el funcionamiento de la macro


No hay comentarios.:

Publicar un comentario

Nota: sólo los miembros de este blog pueden publicar comentarios.