¿Has descubierto la cuadratura del círculo? ¿Eso es Visual Basic avanzado? además eso, tal y como lo has puesto, a mi por lo menos no me funciona (me sale miércoles), si pongo WeekdayName(Weekday(fecha), , 1) me sale martes (que es el día de hoy) y hay otras opciones e.x.
Format(fecha, "dddd") que además parece más sencillo.