Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Trie par date

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

GClaire

XLDnaute Impliqué
Hello la communauté

Je bloque sur un code qui devrais être simple, mais a priori pas si simple du fait de format date : DD DDDD MMMM AAAA

J'aimerais trier ma colonne "A" (avec entête) par ordre de date plus ancienne a plus récente jusqu'à la colonne "F"

Pour ce faire j'inclus le code dans un code qui me permet de formater mon tableau

VB:
Sub Format_Bordure_Récapitulatif_Affaires()

Dim Format_WS As Worksheet
Dim rng As Range, n As Long

Set Format_WS = Sheets("Récapitulatif_Affaires")

With Format_WS
    n = .Cells(.Rows.Count, 1).End(xlUp).Row 'Colonne A
    'MsgBox n
    .Cells(1, 1).Resize(n, 6).Borders.Weight = xlThin 'N° ligne inclus titre de la colonne et Le nombre de colonne a traiter
    'MsgBox n
        .Columns("A:A").NumberFormat = "General" 'On change le format
    With .Columns("A:F")
        .EntireColumn.AutoFit 'on fait une mise en largeur automatique
        .Sort Key1:=Range("A:F"), Order1:=xlAscending, Header:=xlYes 'On fait le trie par date avec en-tête
    End With
        .Columns("A:A").NumberFormat = "dd dddd mmmm yyyy" 'On remet le bon format
End With
Set Format_WS = Nothing
End Sub

Le trie ne se fait pas comme je souhaiterai

Avant :



Aprés :



Auriez-vous une idée du comment faire pour que cela fonctionne comme je souhaiterai?

Merci, G'Claire
 
Vos dates sont en texte. Impossible de les trier par dates. Uniquement en alpha.
Le même en PJ avec de VRAIES dates. Vous pouvez tester votre macro.

et vous remplacez xlAscending par xlDescending, et ça marche. 🙂
 

Pièces jointes

Mettez dans une cellule : = (une cellule de votre tableau en date) +1
Si le réponse est un nombre c'est ok, si la réponse est #Valeur alors c'est un texte.
Si c'est ok alors je ne comprends pas.

Bon c'est bien = #Valeur

Je vais vérifier un truc c'est bizard quand même car je l'envoie avec le code cité pour le format

VB:
.Range("A" & DerrLigne).NumberFormat = "dddd dd mmmm yyyy" 'Formatage Date du mouvement

Si cela ne fait pas ce qu'il faut.....

Je me prend la tête a chaque foi avec ces histoires de format.

Merci, beaucoup.
 
Re
il faut donc que tu envoies une date au format(12/09/2020 ou 44086) et ensuite ou avant tu formates la Cellule en "dddd dd mmmm yyyy"
c'est donc lors de l'enregistrement de ta Ligne il faut que dans la première Colonne une date soit insérée format(12/09/2020 ou 44086)
jean marie
 


Merci pour ta réponse, ChTi160.

Voici comment j'envoie la donnée dans ma feuille.

VB:
    With Feuille_Récapitulatif_Affaires
        .Range("A" & DerrLigne).Value = Format(Me.TextBox_1, "dd dddd mmmm yyyy") 'Date du mouvement
        .Range("A" & DerrLigne).NumberFormat = "dd dddd mmmm yyyy" 'Formatage Date du mouvement

Ou cela cloche?

Merci beaucoup.
 
re
la tu envoies un texte
VB:
.Range("A" & DerrLigne).Value = Format(Me.TextBox_1, "dd dddd mmmm yyyy")
il faut envoyer la Date puis formater soit
VB:
With .Range("A" & DerrLigne)
       .Value = CDate(Me.TextBox_1) 'Date du mouvement
       .NumberFormat = "dddd dd mmmm yyyy"
End with
non testé Lol
jean marie
 
Dernière édition:
Re,
Si Me.TextBox_1 est du type "mercredi 02 septembre 2020" Cdate me renvoie une erreur, il attend "02 septembre 2020"
Donc pour contourner le problème, une possibilité à tester :
VB:
With .Range("A" & DerrLigne)
       .Value = CDate(Mid(Me.TextBox_1, Application.Find(" ", Me.TextBox_1)))
       .NumberFormat = "dddd dd mmmm yyyy"
End With
Le but est de supprimer le premier mot de Me.TextBox_1.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
237
  • Question Question
Microsoft 365 format date
Réponses
3
Affichages
105
Réponses
2
Affichages
153
Réponses
8
Affichages
493
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
169
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…