Visual Basic - Reducción

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 145
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Reducción

Publicado por Sah1d Ra (199 intervenciones) el 23/05/2025 19:07:58
Saludo a todos

Hace días tuve la necesidad de convertir el mes textual a mes numérico.

El resultado de ello fue el siguiente (18 líneas):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Public Function iMes(vMes As String) As Integer
    Select Case LCase(vMes)
        Case "enero": iMes = 1
        Case "febrero": iMes = 2
        Case "marzo": iMes = 3
        Case "abril": iMes = 4
        Case "mayo": iMes = 5
        Case "junio": iMes = 6
        Case "julio": iMes = 7
        Case "agosto": iMes = 8
        Case "septiembre": iMes = 9
        Case "octubre": iMes = 10
        Case "noviembre": iMes = 11
        Case "diciembre": iMes = 12
        Case Else
            iMes = 0
    End Select
End Function

Mi pregunta y reto para quien lo desees abordar es el siguiente, que tanto puedes reducir ese código.

El código anterior lo logre reducir a 5 líneas.
1
2
3
4
5
Public Function iMes(vMes As String) As Integer
'Linea 2
'Linea 3
'Linea 4
End Function

Felices líneas de programa10n, los leo en algunos dos meses para comparar y compartir mi solución.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Reducción

Publicado por Antoni Masana (566 intervenciones) el 04/06/2025 15:24:54
Super reducido.

1
2
3
Public Function iMes(vMes As String) As Integer
    iMes = (InStr("ene feb mar abr may jun jul ago sep oct nov dic", Left(LCase(vMes), 3)) + 3) / 4
End Function

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 145
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Reducción

Publicado por Sah1d Ra (199 intervenciones) el 04/06/2025 17:38:24
Excelente yo lo dividí entre tres al final

En
lo particular
es lo maravilloso
de la programación varios métodos
llevan a la misma solución,
gracias por
tu aportación.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar