Convertir Mes desde String texto a formato número

Antes que nada, de antemano muchas gracias por la ayuda.

Probablemente sea algo muy sencillo pero me he bloqueado, quiero pasar un mes desde el formato "dddd" al formato "dd", es decir de "enero" a "01", lo tengo en el formato de "dddd" como string, tengo un ComboBox que puede variar con tener todos los meses o unos cuantos, y no necesariamente en orden, por lo que no es buena idea usar "ListIndex"

No entiendo por qué usando por ejemplo:

strmes  = "enero"
Format(strmes, "mm")

me sigue devolviendo el mes en letras.

Y el error empieza al definir las variables.

Sé que una opción sería con un if y definir los doce meses, pero ya es más por la duda de saber si hay una forma más profesional de hacerlo.

1 Respuesta

Respuesta
1

El texto "enero" no corresponde a una fecha, es por eso que no le puedes dar formato de fecha:

Format(strmes, "mm")

Primero hay que convertir "enero" a una fecha, y después obtener el mes en número:

'
    strmes = "enero"
    fecha = CDate("01/" & strmes & "/" & Year(Date))
    mes = Format(fecha, "mm")

Con CDate convierto "01/enero/2017" a una fecha "01/01/2017"

Entonces, ya puedes obtener el mes de la fecha "01/01/2017" = "01"


'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas