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

Tri par date qui marche pas bien.

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 !

800vfr76

XLDnaute Occasionnel
Bonjour a tous,

J'ai un petit problème avec mon tri par date, il y a parfois des erreurs quand je déplace des sommes dans une autre cellule.

Faut-il changer la formule?

Y a t-il une bonne formule?

Je joint un exemple,le problème vient quand je déplace des sommes de la colonne "A débiter" vers la colonne "Débiter"

J'ai essayé en prenant toutes les colonnes pour le tri mais cela ne change rien.

Merci de votre aide.
@+

Regarde la pièce jointe compte.zip
 

Pièces jointes

Re : Tri par date qui marche pas bien.

re ;
c'est bien le tri qui ne fonctionne pas dis moi

chez mois c'est ok, j'ai ajourté des lignes le tri c'est fait sans probleme

désolé de m'etre immisé dans le fil
 
Dernière édition:
Re : Tri par date qui marche pas bien.

Re,

Oui Wilfried_42 c'est bien le tri par date qui ne marche pas.

Reprend ton fichier compte2.zip.

En A11 tu mets comme date le 3/1/06
dans la colonne "A débiter" tu mets 30
Tu déplace après cette somme dans la colonne "Débiter"
Tu fais le tri et la dans la colonne solde au niveau de la ligne en rouge il y a #REF!

Merci de te pencher aussi sur mon problème.
 
Re : Tri par date qui marche pas bien.

bonjour 800vfr,wilfried
changer le code pour le mettre dans le code de la feuille
clic droit sur onglet feuille et visualiser code et tu colles le code
ensuite tu affectes le bouton de la feuille à tri

si tu as des problèmes j'ai le classeur qui est prêt avec 4 feuilles(mais+ de 100k)

Sub TRI()
'
' TRI Macro
' Macro enregistrée le 07/12/2006 par PENIN
Dim TblMois(1 To 12, 1 To 1) As String, L As Byte
Dim Cel As Range, Ld As Integer, NbreL As Integer

With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With

For L = 1 To 12
TblMois(L, 1) = UCase(Format(DateSerial(2006, L, 1), "mmmm"))
Next L
For L = 1 To 12
Set Cel = Columns(1).Find(TblMois(L, 1))
If Not Cel Is Nothing Then Ld = Cel.Row + 3 'ld ligne début
NbreL = Application.WorksheetFunction.CountIf(Range("A" & Ld & ":A" & Ld + 56), "<>" & "")
If NbreL > 1 Then
Range("A" & Ld & ":J" & Ld + NbreL - 1).Sort Key1:=Range("A" & Ld), Order1:=xlAscending, Header:=xlNo 'Guess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom ', DataOption1:=xlSortNormal
End If

Ld = 0: nbre = 0

Next L
With Application
.ScreenUpdating = True
.Calculation = xlCalculationAutomatic
End With

End Sub

à bientôt
 
Re : Tri par date qui marche pas bien.

re

je viens de faire exactement les manips que tu m'as données et chez moi ca marche, par contre dans ton fichier en I7 j'ai dans la formule deux #REF qui sont totalement incomprehensibles puisqu'il ne jouent pas sur le resutats ni l'affichage

a te lire
 
Re : Tri par date qui marche pas bien.

Re,

Voila ce que cela donne chez moi.

Les #REF! dans certaines formules viennent du fait que des cellules ont été déplacées et après le tri il ne trouve plus les cellule correspondantes. Doux certaine erreur a certain moment.

Regarde la pièce jointe compte2.zip
 

Pièces jointes

Re : Tri par date qui marche pas bien.

Re,

C'est juste pour remonter le post.

Si vous avez une solution a mon problème.

La solution serait peut-être de figer la formule dans la colonne solde pour éviter d'avoir des #REF! lors de déplacement de cellules.
 
Re : Tri par date qui marche pas bien.

bonjour 800,Wilfried
800,tu reviens toujours avec ton fichier original et tu ne tiens pas compte des solutions ou remarques proposées,quel est ton problème,chez wilfried et moi çà marche
l'erreur vient du fait que tu as solde entre 500 et ta 1ère ligne de formule
ou bien tu mets ton 500 en 1ère ligne(comme proposé) ou tu le mets à la place de solde(ton entête)
à bientôt
 
Re : Tri par date qui marche pas bien.

Re,

Ok ca marche, mais maintenant comment faire pour que cette macro marche sur les autres feuilles sans avoir a remplacer 2006 par 2007 et ainsi de suite.

Par contre j'ai remis sur la première ligne la formule de calcul a la place des 500 et ca marche, si cette ligne n'est pas triée c'est pas grave car la date est sensée être le premier jour du mois.
 
Re : Tri par date qui marche pas bien.

800,tu mets le code qui suit dans le code de la feuille(clic droit onglet feuille et visualiser code),n'oublie pas de changer le code du bouton
si tu fais copier coller feuille tout déménage en quelques sortes(boutons,code,etc)
dans le tri j'ai fait en sorte que la 1ère ligne reste en place
si tes feuilles sont déjà en place tu mets simplement le code et tu changes le code du bouton comme expliqué plus haut

tu auras ainsi un tri sur chaque feuille

Sub TRI()
Dim TblMois(1 To 12, 1 To 1) As String, L As Byte
Dim Cel As Range, Ld As Integer, NbreL As Integer

With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With

For L = 1 To 12
TblMois(L, 1) = UCase(Format(DateSerial(2006, L, 1), "mmmm"))
Next L
For L = 1 To 12
Set Cel = Columns(1).Find(TblMois(L, 1))
If Not Cel Is Nothing Then Ld = Cel.Row + 3 'ld ligne début
NbreL = Application.WorksheetFunction.CountIf(Range("A" & Ld & ":A" & Ld + 56), "<>" & "")
If NbreL > 1 Then
Range("A" & Ld & ":J" & Ld + NbreL - 1).Sort Key1:=Range("A" & Ld), Order1:=xlAscending, Header:=xlNo 'Guess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom ', DataOption1:=xlSortNormal
End If

Ld = 0: nbre = 0

Next L
With Application
.ScreenUpdating = True
.Calculation = xlCalculationAutomatic
End With

End Sub

à bientôt
 
- 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
308
Réponses
18
Affichages
597
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…