Convertir fecha al nombre del día de la semana con VBA

En esta ocasión les presento un concepto muy interesante a la hora de trabajar con fechas dentro de una hoja de cálculo de Excel.

Lo primero que debes saber es que una fecha no es nada más que un número real (compuesto por un entero y un decimal) que es interpretado por Excel como un valor que expresa una notación que nosotros como usuarios comprendemos como fechas.

Bajo este contexto lo único que realiza Excel es colocar mascaras a dichos valores para representar fechas; No obstante, y del mismo modo que Excel utiliza dichas máscaras, el usuario también puede usarlas a conveniencia para retornar otros valores como por ejemplo cadenas con nombres que representen el día de la semana de una fecha particular y definida.

Por otro lado, te comentaré en el material audiovisual que el modo de convertir el valor numérico que representa una fecha en un texto puede hacerse mediante el uso de funciones o código VBA. Es decir, se puede convertir una fecha a un texto con formato desde la misma interfaz de usuario utilizando la función TEXTO, o bien desde el entorno de desarrollo del VBA utilizando la función Format; en cualquiera de los dos casos dichas funciones son idénticas en su funcionamiento.

Para finalizar, te explico que la propiedad idónea a emplear en la rutina de conversión es NumberFormatLocal y no NumberFormat, ya que esta última trabaja en el idioma de la macro, en contra posición de la primera que trabaja en el idioma del usuario; es decir, NumberFormatLocal acepta los tipos de formato de un objeto Range como si se estuviesen haciendo desde la misma interfaz de usuario.


1 comentario:

  1. Muchas Gracias Maestro he estado buscando algo que me ayudara para resolver una situación similar.. Muchas Gracias y Muchos Éxitos en el 2018. Saludos desde Panamá

    ResponderEliminar