Ejercicios con la Instrucción With end With de VBA

La Instrucción With End With en VBA le permite agrupar código que hace referencia al mismo objeto de una manera organizada y legible, mejorando la claridad y la facilidad de mantenimiento del programa.

¿Cómo funciona?

La estructura With End With funciona creando un contexto de tiempo para un objeto específico. En este contexto, puede acceder a las propiedades, métodos y eventos de un objeto de un vistazo sin tener que escribir el nombre del objeto cada vez.

With objeto
    ' Código que accede a las propiedades, métodos y eventos del objeto
End With

Beneficios:

  • Organizar el código más clara y visualmente más atractiva.
  • No es necesario volver a escribir los nombres de los objetos.
  • Fácil de cambiar o agregar código asociado a objetos específicos.

Ejercicios:

1. Formatear celdas en Excel:

Supongamos que desea formatear un rango de celdas en Excel usando una fuente específica. Cree código VBA que utilice la construcción With End With para aplicar formato y mejorar la legibilidad y reducir la duplicación.

Sub FormatearCeldas()

    ' Definir el rango de celdas
    Dim rangoCeldas As Range
    Set rangoCeldas = Range("A1:C10")

    ' Aplicar formato con With...End With
    With rangoCeldas
        .Font.Size = 12
        .Font.Bold = True
        .Font.Italic = False
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
    End With

End Sub

2. Cambiar el color de un formulario en Access:

Supongamos que desea cambiar el color de fondo de un formulario cuando se abre en Access. Cree código VBA que utilice la estructura With…End With para acceder a las propiedades del formulario y establecer el color deseado.

Private Sub Form_Open()

    ' Cambiar el color de fondo del formulario con With...End With
    With Me
        .BackColor = RGB(255, 0, 0) ' Rojo
    End With

End Sub

3. Manipular objetos gráficos en Word:

Imagine que desea cambiar el tamaño y la posición de una imagen en un archivo de Word. Cree código VBA que utilice la estructura With…End With para acceder a las propiedades del objeto gráfico y realizar los cambios necesarios.

Sub ModificarImagenExcel()

    ' Obtener la referencia a la imagen
    Dim imagen As Shape
    Set imagen = Worksheets("Hoja1").Shapes("Imagen1") ' Suponiendo que la imagen está en A1 y se llama "Imagen1"

    ' Modificar el tamaño y la posición con With...End With
    With imagen
        .Left = 100 ' Ajustar la posición horizontal en puntos
        .Top = 50 ' Ajustar la posición vertical en puntos
        .Width = 200 ' Ajustar el ancho en puntos
        .Height = 150 ' Ajustar la altura en puntos
    End With

End Sub

Instrucción With y input box y Msgbox

Related Articles

Responses

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

  1. hola buenas tardes desde España (valencia), hace poco que sigo el curso tuyo el único fallo que veo es que no acercas demasiado las instrucciones que editas en los modulo de vda si lo acercas un poco mas y se vería mejor, polo demás esta dodo bien