La fameuse inversion du jour et du mois VBA

Nicoroth Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -  
tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   -
Salut,

J'ai fouille un peu sur le net pour voir pourquoi lorsque je cree une macro pour formater des date, VBA m'inverse le jour et la date.
J'ai donc vu que pas mal de personnes galere... et moi aussi.
Donc, un ptit coup de pouce serait le bien venu, je m'explique,


voila ma fonction qui me permet (a la main) de reformater des dates qui sont dans une colonne K (car je me sert de ces dates dans une autre feuille et ai besoin de les reformater ainsi pour qu'elle sorte sous la forme jj/mm/aaa)
En le faisant a la main, cela marche parfaitement, mais je souhaite creer une petite macro qui me permette de la faire, et cette macro ci dessous m'inverse le jour et le mois.
Apres mes recherches, j'ai vu que la fonction Cdate permettait d'eviter au programme de faire ctte inversion, cependant, etant un debutant en VBA, je ne sait pas (apres plusieurs essais) comment ecrire la fonction...

Peut etre que je m'y prend tres mal mais voila:

Sheets("Feuille1").Select
Columns("K:K").Select
Selection.TextToColumns Destination:=Range("K1"), DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 2), Array(10, 1)), TrailingMinusNumbers:=True
Sheets("Feuille2").Select

Si quelqu'un a une idee cela m'aiderai beaucoup.

Merci
A voir également:

7 réponses

tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   435
 
Salut
essaie avec TEXTE(K3;"jj/mm/aaaa") au lieu de K3 :)
1
tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   435
 
Salut,
pourrais-tu stp poster un exemple de fichier avec tes valeurs en colonne K (www.cjoint.com) ?
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
essaye avec..
    Columns("K").NumberFormat = "dd/mm/yyyy"

A+
0
Nicoroth Messages postés 54 Date d'inscription   Statut Membre Dernière intervention  
 
Je regarde ce que je peut faire
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nicoroth Messages postés 54 Date d'inscription   Statut Membre Dernière intervention  
 
En fait j ai regarde un peu sur mon fichier et je croi que le probleme n'est pas vraiment ou je pensait.

ce au'il se passe en fait, c'est que j'ai ces dates dans la colonne K et plein d'autres info entre les collones C et S.

Mon objectif, c'est d'utiliser un fonction concatenate dans la colonne B, celle ci fonctionne bien sauf pour les dates, car lorsque je lance le concatenate, la date sous format dd/mm/yyyy devient un nombre a 5 chiffre qui doit etre une reference propre a Excel.

Exemple, la date 15/05/2010 sous cette forme dans la colonne K devient 40313 dand mon concatenate.

Pourquoi? perso j'y comprend rien y'a t'il une fonction que l'on peut rajouter dans le concatenate au niveau du K3?

je vous donne ma formule:

=CONCATENATE(H3;" ";I3;". ";;"Obs: ";L3;" id: ";C3;" Art: ";E3;" Cli: (";M3;"). ";S3;" L. ";;R3;" Unids. FI: ";K3;". FD: ";O3)

Merci
0
picsou
 
Pourquoi? perso j'y comprend rien y'a t'il une fonction que l'on peut rajouter dans le concatenate au niveau du K3?
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Mais oui, la date est convertie en date sériale, numéro qui commence à l'anée 01/01/1900.
Tu peu employer ce nombre comme une date en formattant la colonne. ou avec DateValue si c'est en VBA.
Et c'est ce qu'il y a de mieux, vu que tu peu aussi l'afficher comme tu veux avec "Format".
A+
0