Ícono del sitio Formulas Excel

Ejecutar instrucción según valor en excel

En este ejercicio te enseñare a programar una función que podrá ejecutar una instrucción según valor en excel, esto tiene muchas aplicaciones en formatos contables, así que seguramente te sera de mucha ayuda.

Objetivo principal

Aunque programare una función muy especifica, el objetivo principal no es la funcionalidad como tal, lo mas importante es que comprendan los conceptos que se describirán.

Función para validar sexo

Tenemos una tabla de datos donde se ingreso informacion de personas, sin embargo el sexo se ha indicado de diferentes maneras, así que la función tendrá que validar si es hombre o mujer, devolverá M para mujeres, H para hombres.

tabla de datos base

La siguiente tabla contiene algunos registros de prueba.

Función para validar sexo

La siguiente función recibirá como parámetro el dato que identifica el sexo o genero de la persona, son los datos de la tabla anterior, tendrá que analizar cada posible caso donde la persona se identifique como hombre o mujer.

Option Explicit

Public Function ValidaSexo(strSexo As String) As String
    Dim str As String

    str = UCase(strSexo)
    Select Case str
        Case "F"
            ValidaSexo = "M"
        Case "FEMENINO"
            ValidaSexo = "M"
        Case "MUJER"
            ValidaSexo = "M"
        Case "M"
            ValidaSexo = "H"
        Case "MASCULINO"
            ValidaSexo = "H"
        Case "HOMBRE"
            ValidaSexo = "H"
    End Select
End Function

Sentencia Select

En este caso la estrella es la sentencia Select, es una estructura de control muy parecida a IF, pero esta tiene sus peculiaridades propias, básicamente toma una variable y analiza posibles casos según su valor y ejecuta las instrucciones que indiquemos.

Casos según sexo de la persona

En este ejemplo particular, se tienen varios casos para validar el sexo de la persona, sobre todo considerando que los datos registrados no siguieron un estándar para indicar el sexo o genero.

Case "F"
    ValidaSexo = "M"
Case "FEMENINO"
    ValidaSexo = "M"
Case "MUJER"
    ValidaSexo = "M"
Case "M"
    ValidaSexo = "H"
Case "MASCULINO"
    ValidaSexo = "H"
Case "HOMBRE"
    ValidaSexo = "H"

Consideración de mayúsculas

Si tuviéramos que indicar explicitamente cada caso, la función seria muy grande, esto porque hay que registrar las combinaciones donde hay mayúsculas y minúsculas.

Para evitar esto, convertimos a mayúsculas el datos que se pasa por parámetro a la función ValidaSexo; así no es necesario indicar de manera explicita todos los casos.

str = UCase(strSexo)

Demostración en vídeo para uso de Select Case

Formula usada en la tabla de datos

Esa misma función se puede usar directo en las celdas como las otras funciones predeterminadas de excel.

=ValidaSexo(A2)

Resultados de la formula

En la siguiente imagen puedes ver el resultado de esa formula, como puedes ver, es muy sencilla y conveniente.

Posibles aplicaciones de Select

En conclusión,  has podido notar en este ejemplo de como Ejecutar instrucción según valor en excel, que la instrucción Select tiene muchas aplicaciones.

Ademas, el hecho de poder ejecutar una función personalizada directo en las celdas es algo muy útil al generar nuestras propias aplicaciones.

Ejecutar instrucción según valor

Salir de la versión móvil