Gestion dates VB Excel
Résolu/Fermé
A voir également:
- Gestion dates VB Excel
- Liste déroulante excel - Guide
- Si et excel - Guide
- Logiciel gestion locative gratuit excel - Télécharger - Comptabilité & Facturation
- Aller à la ligne excel - Guide
- Logiciel gestion cave à vin gratuit excel - Télécharger - Cuisine & Gastronomie
8 réponses
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
24 juil. 2008 à 14:36
24 juil. 2008 à 14:36
Salut,
essayes avec ce code
Selection.NumberFormat = "m/d/yyyy"
A+
essayes avec ce code
Selection.NumberFormat = "m/d/yyyy"
A+
J'ai essayé ca me donne le même problème:
pour une date initialement "06.06.08" le résulat est "06/06/2008" donc parfait de ce côté
par contre pour un date initialement "23.06.08" le résultat est "23/06/08" et excel ne le reconnaite pas comme date...
Tu as une autre idée?
Merci en tout cas de te pencher sur ce cas!
@+
pour une date initialement "06.06.08" le résulat est "06/06/2008" donc parfait de ce côté
par contre pour un date initialement "23.06.08" le résultat est "23/06/08" et excel ne le reconnaite pas comme date...
Tu as une autre idée?
Merci en tout cas de te pencher sur ce cas!
@+
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
24 juil. 2008 à 15:07
24 juil. 2008 à 15:07
Ta cellule doit être déclaré en texte ou autre,
mets un exemple de ton fichier sur le forum avec ce lien que l'on regarde cela de plus prêt
https://www.cjoint.com/
A+
mets un exemple de ton fichier sur le forum avec ce lien que l'on regarde cela de plus prêt
https://www.cjoint.com/
A+
après de gros soucis sur les dates ou le jour est supérieur à 12, des essai avec datval(), j'ai trouvé ça.
Range("K2").Select
Range(Selection, Selection.End(xlDown)).Select
For Each c In Selection.Cells
c.Value = Mid(c, 1, 2) & "/" & Mid(c, 4, 2) & "/20" & Mid(c, 7, 2)
Next
Selection.NumberFormat = "dd/mm/yyyy"
Selection.HorizontalAlignment = xlRight
Si ca peut t'aider....
Range("K2").Select
Range(Selection, Selection.End(xlDown)).Select
For Each c In Selection.Cells
c.Value = Mid(c, 1, 2) & "/" & Mid(c, 4, 2) & "/20" & Mid(c, 7, 2)
Next
Selection.NumberFormat = "dd/mm/yyyy"
Selection.HorizontalAlignment = xlRight
Si ca peut t'aider....
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Archi-dessin
Messages postés
270
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
28 décembre 2009
25
24 juil. 2008 à 16:37
24 juil. 2008 à 16:37
selection.NumberFormat =format(date,"dd/mm/yyyy")
selection.NumberFormat =format(date,"dd/mm/yyyy") ne marche pas (ou je n'ai pas su?)
alors j'ai fait un mix:
Range("K2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:=".", Replacement:="/", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
For Each c In Selection.Cells
c.Value = Format(c.Value, "dd/mm/yyyy")
Next
Selection.HorizontalAlignment = xlRight
l'alignement (a droite ou à gauche) est nécessaire car les fameuses dates avec jours > 12 sont alignées à gauches tandis que les autres le sont à droite
alors j'ai fait un mix:
Range("K2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:=".", Replacement:="/", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
For Each c In Selection.Cells
c.Value = Format(c.Value, "dd/mm/yyyy")
Next
Selection.HorizontalAlignment = xlRight
l'alignement (a droite ou à gauche) est nécessaire car les fameuses dates avec jours > 12 sont alignées à gauches tandis que les autres le sont à droite
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
24 juil. 2008 à 20:55
24 juil. 2008 à 20:55
Sur mon post 3 je proposais qu'un exemple du problème soit mis sur le forum, je pense qu'il y a mauvaise saisie de la date au départ ce qui est interprété par excel comme du texte.
Si on saisie 06/05/08 par exemple et que l'on applique dans le code macro
Selection.NumberFormat = "m/d/yyyy"
il n'y a aucun problème.
Par contre si il est saisie 06.05.08 la macro ne modifie pas cette saisie qui est considérée comme du texte.
Les séparateurs de date étant / si l'on souhaite qu'ils soient remplacé par un point il convient de modifier les paramètres ce qui risque poser d'autre problèmes
A+
Si on saisie 06/05/08 par exemple et que l'on applique dans le code macro
Selection.NumberFormat = "m/d/yyyy"
il n'y a aucun problème.
Par contre si il est saisie 06.05.08 la macro ne modifie pas cette saisie qui est considérée comme du texte.
Les séparateurs de date étant / si l'on souhaite qu'ils soient remplacé par un point il convient de modifier les paramètres ce qui risque poser d'autre problèmes
A+
Archi-dessin
Messages postés
270
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
28 décembre 2009
25
24 juil. 2008 à 22:18
24 juil. 2008 à 22:18
salut,
affecter a la cellule le format suivant, exemple:
Feuil1.cells(14, 3) = Format$(Date, "dd mm yyyy")
affecter a la cellule le format suivant, exemple:
Feuil1.cells(14, 3) = Format$(Date, "dd mm yyyy")
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
24 juil. 2008 à 22:22
24 juil. 2008 à 22:22
Salut Archi-dessin,
ne t'affole pas plusieurs discutions sont ouvertes sur ce thème par booby311
A+
ne t'affole pas plusieurs discutions sont ouvertes sur ce thème par booby311
A+