lunes, 27 de diciembre de 2021

Condicional IF ELSE anidado en VBA para Microsoft Excel

Dentro de un bloque de código se puede escribir cualquier código, incluso un nuevo bloque de código.

Esto se denomina anidamiento, y permite, por ejemplo, incluir un condicional dentro de otro condicional.

La mayoría de los lenguajes de programación imponen un máximo de niveles de anidamiento.

En el ejemplo de hoy veremos un condicional con anidamiento en una macro de Microsoft Excel programada en VBA.


Este es el código del ejemplo.




Option Explicit


Sub condicionalAnidado()

    Dim edad As Integer

    edad = InputBox("Introduce tu edad:")

    

    If edad < 18 Then

        If edad < 17 Then

            If edad < 16 Then

                If edad < 15 Then

                    If edad < 14 Then

                        If edad < 13 Then

                            If edad < 12 Then

                                If edad < 11 Then

                                    If edad < 10 Then

                                        MsgBox ("tienes menos de 10 años")

                                    End If

                                    MsgBox ("tienes menos de  11 años")

                                End If

                                MsgBox ("tienes menos de  12 años")

                            End If

                            MsgBox ("tienes menos de  13 años")

                        End If

                        MsgBox ("tienes menos de  14 años")

                    End If

                    MsgBox ("tienes menos de  15 años")

                End If

                MsgBox ("tienes menos de  16 años")

            End If

            MsgBox ("tienes menos de  17 años")

        End If

        MsgBox ("tienes menos de 18 años")


    Else

        MsgBox ("Eres mayor de edad")

    End If

    End Sub


Dentro de la primera estructura condicional if se encuentra todo el código que hemos resaltado en azul.
Cómo se puede contar son otros 8 condicionales if.

Dentro del segundo se incluirían los resultados a continuación.


Siendo el condicional más interno y resaltado en la siguiente imagen.

En este código si el dato introducido es menor que 10 se valoran todos los condicionales hasta llegar a este.


Si se cumple este condicional se mostrara el mensaje indicando que se es menor de 10 años.

Y también todos los mensajes indicando que 6 menor de 11 12 13 14 15 16 17 y 18.



No hay comentarios:

Publicar un comentario