Bonjour a Tous,
Je remplis une feuille avec des valeurs extraites d'un fichier texte. Tout se passe bien.
L'operation est faite avec un module macro VBA.
Ce tableau me donne une information de date dans une chaine (texte) sous la forme aammdd (annee-mois-jour).
Je transforme cette information, dans une autre celulle, en une vraie date avec la fonction date : =date(stxt(madatechaine,1,2),stx(madatechaine,3,2),stxt(madatechaine,5,2)).
en deposant par programme vb, la formule dans la cellule ad'hoc
sequence VB
ActiveCell.FormulaR1C1 = "=date(stxt(RC[-7],1,2),stxt(RC[-7],3,2),1)"
ActiveCell.NumberFormat = "[$-40C]mmm-yy;@"
a part les soucis lies au fait que Excel est localise france (separateur ";") et que VBA cause anglais (separateur ","),
quand je vais voir le resultat dans la feuille Excel, j'ai la desagreable surprise de voir la cellule m'afficher #NOM? (message d'erreur connu)
alors que le contenu de la cellule est correct, que son format d'affichage est correct.
Et pourtant, il suffit d'afficher le contenu de la cellule dans la zone de saisie (au dessus des numeros de colonnes), d'y cliquer sans rien faire puis de valider le contenu de la cellule avec la coche verte,
et la, miracle, ma cellule dans le tableau m'affiche bien la date sous la forme recherchee Mois-Annee.
D'ou ma question : est-ce que "remplir une cellule avec une formule generee par Vba" suffit a ce qu'Excel comprenne le contenu de la cellule ?
et, apparemment, cela ne pose de souci que dans le traitement de date (ou du moins n'a d'effet visible QUE pour les dates).
Merci aux sachants,
Cordialement a tous,
Caramel13
Partager