Hola a todos:

El post de hoy es un poco distinto a los demás, es la respuesta a una consulta de una personita muy especial, mi hija Alicia 🙂

Desde luego está más que acostumbrada a verme delante del ordenador trabajando y sobre todo con el editor de VBA y la hoja de cálculo. Hace unos días me dijo que le gustaría ver cómo las celdas se iban coloreando «en distintas direcciones» y «haciendo formas».

Y como no podía ser de otra manera respondí a su consulta rápidamente.

Con unas pocas líneas de código he creado una pequeña «aplicación» que se ejecuta con un doble clic de ratón y «dispara» una rutina que de forma aleatoria va pintando celdas. Se basa en 4 movimientos «arriba, abajo, adelante y atrás»:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim i           As Long, j As Long
    Dim fin         As Long, final As Long, Mov As Long
    For i = 1 To 6000
        Mov = Application.WorksheetFunction.RandBetween(1, 4)
        On Error Resume Next
        Select Case Mov
            Case 1
                ActiveCell.Offset(0, 1).Select
                ActiveCell.Interior.Color = vbRed
            Case 2
                ActiveCell.Offset(0, -1).Select
                ActiveCell.Interior.Color = vbGreen
            Case 3
                ActiveCell.Offset(1, 0).Select
                ActiveCell.Interior.Color = vbBlue
            Case 4
                ActiveCell.Offset(-1, 0).Select
                ActiveCell.Interior.Color = vbMagenta
        End Select
        i = i + 1
    Next i
End Sub

Es un código muy sencillo y con la única pretensión de pintar una hoja de excel y hacer que una niña pequeña sonría.

Solo tenéis que pegar la macro en módulo VBA de la hoja en la que queréis generar los colores y listo, doble clic.

Y eso es todo, os dejo el archivo, por si queréis jugar con vuestros peques o utilizarlo para lo que necesitéis.

Descarga el archivo de ejemplo pulsando en:

¿Te ha resultado de interés?, puedes apoyar a Excel Signum con una pequeña donación.

Donate Button with Credit Cards

¡¡Muchas gracias!!

Mediante la suscripción al blog, la realización comentarios o el uso del formulario de contacto estás dando tu consentimiento expreso al tratamiento de los datos personales proporcionados según lo dispuesto en la ley vigente (LOPD). Tienes más información al respecto en esta página del blog: Política de Privacidad y Cookies

Comparte este post