VBA ne change pas le format de toutes les cellules

J'ai une colonne (col. I) avec des dates dans différents formats:

16. Jul 98 // 22-MAR-2016 // 04-MAY-2015 // 17. Jul 10 // 13-DEC-2011 // 25. Aug 98 // 12. Sep 11 

J'ai utilisé le code suivant pour modifier le format:

 Sub numberformats() Range("I:I").NumberFormat = "dd. mmm yyyy" End Sub 

Cependant, alors que cela fonctionnait bien sur les cellules avec le format dd. mmm yy, il n'a pas fonctionné sur les cellules avec le format dd-mmm-yyy. La modification du format avec une simple cellule de format de clic droit n'a pas aidé ni (c'était ma première étape, avant de passer à VBA).

J'ai fait une search par Internet, mais toutes les réponses que j'ai trouvées sur des problèmes similaires étaient trop complexes pour que je puisse l'ajuster à mon problème. Je serais très heureux de vous conseiller (je suis un débutant absolu avec ceci …).

Cela se produit lorsque vous utilisez une version non anglais de Excel.

Par exemple, dans la version allemande, 22.03.2016 est présenté comme 22.Mrz 16 . Ainsi, dans votre cas, Excel ne comprend pas que vous donnez une date, lorsque vous donnez 22-MAR-2016 . Le UPPERCASE est un peu problématique.

Probablement, c'est une bonne idée de le changer au 22-Mar-2016 et réessayer, dans mon Excel, il est tout à fait correct.

Pour voir ce que votre Excel comprend, allez dans Fichier> Options> Avancé> Listes définies par l'user. Vous y verrez ce qui suit: entrez la description de l'image ici