Bonjour,
Pour t'aider il faudrait un extrait de code plus exhaustif, dans lequel apparaît le détail de ce que sont .wYear, .wMonth, .wDay, car je pense déjà qu'il y a un soucis à ce niveau.
Ensuite, il faut distinguer une date exploitable, qui est un nombre, de son format, qui n'est qu'une question d'affichage. Le format se gère au niveau de la cellule, l'utilisation de la fonction Format() rend la date inexploitable. L'utilisation de CDate() convertie une date texte en date numérique (exploitable), mais tu perds le format souhaité.
Un exemple plus parlant :
Sub FormaterDate()
Dim Y As Integer, M As Integer, D As Integer
Y = 2019
M = 6
D = 6
Range("A1") = DateSerial(Y, M, D) 'Inscrit la date 06/06/2019 qui correspond au nombre 43622
Range("A1").NumberFormat = "ddd dd.mm.yyyy" 'Change le format de cellule, mais ne modifie pas la date qui reste numérique et exploitable
End Sub