Rangement date dans une colonne

bonjour a tous

dans le cadre d'archivage de données généalogique par année de décès où naissance où mariage chaque type dans une feuille séparée

comment puis je ranger dans l'ordre croissant du plus ancien au plus récent les lignes correspondantes au date en colonne A

c'est a dire la plus ancienne date en début de colonne

je prépare un fichier si besoin

Bonjour

1) tu insères une colonne avant la colonne B (elle devient ta Nlle colonne B)

tu y mets un titre ici Tri

tu installes le Filtre automatique sur tout ton tableau

2) En B2 incrémentée vers le bas, la formule:

=SI(NBCAR(A2)>4;(GAUCHE($A2;NBCAR(A2)-4)&DROITE($A2;4)+800)*1;DATE(A2+800;1;1))

tu effectues le tri décroissant (avec le filtre automatique) de la colonne B

Cordialement

bonsoir amadeus et le forum

merci pour ta réponse mais le formule que tu as mis ne fait pas ce que je voudrais et elle met en colonne B des dates très en avance sur le temps comme sur l'apercu

le rangement que je voudrais est que si la date exemple 18/12/1690 se trouve en 15ème où plus où moins de ligne quelle se retrouve en haut et s'il y a une date x/x/1691 quelle suivent et si pas d'année entre x/x/1693 et x/x/1712 que x/x/ 1712 vienne dessous x/x1691

mais j'ai des dates aussi avec l'année uniquement

ces dates vont de de 1479 a 1899

date en avance

Bonsoir,

Excel n'est vraiment pas conçu pour les généalogistes !

Là il te faut simplement inverser le sens du tri pour avoir l'ordre que tu veux.

Excel ne gère pas les dates avant 1900, aussi Amadeus te fait ajouter 800 ans à tes dates, ce qui permet qu'elles soient reconnues comme dates et les trier dans l'ordre croissant ou décroissant : le tri sur B permettant de mettre les dates en A dans l'ordre voulu...

C'est un des trucs utilisables pour arriver à travailler avec des dates dans Excel.

Pour info, VBA gère un peu mieux les dates qu'Excel (il n'a pas le bogue du 29 février 1900, ce qui explique un jour de décalage avant le 1er mars 1900 entre Excel et VBA). VBA gère les dates avant 1900 et reconnaît comme dates les chaînes texte saisies dans Excel sous forme de dates.

VBA remonte en principe jusqu'en l'an 100, mais cela a certaines limites, sa gestion se fait sur un modèle calendrier grégorien, lequel n'existe que depuis le 15 octobre 1582, et encore pas pour tous les pays (les dates d'adoption ont été échelonnées jusqu'au XXe siècle) [pour la France, 20 décembre 1582, sauf Savoie et donc Comté de Nice qui ont appliqué les directives papales à la date prévue.] Et outre, les décalages des jours supprimés par la réforme que VBA ignore, avant 1600 il refuse comme dates les 29 février des années séculaires qui alors existaient... Bref, beaucoup de correctifs à apporter quand on travaille sur de la datation dans le passé.

Bon weekend. Cordialement.

bonjour Mferrand

merci de ta réponse tu me dit

Excel n'est vraiment pas conçu pour les généalogistes !

je le sais bien j'utilise un logiciel dédié, ce que je fait avec est d'archiver les données récoltés lors de mes recherches en mairie

afin de pouvoir les analysées mieux que sur papier

Bonjour

MFerrand t'as donné l'explication.

Bien sur, je me suis trompé dans le sens du tri, mais le filtre auto te permets de le changer.

En effet, comme dit MFerrand, la colonne B n'est là que pour le tri, tu peux donc, si elle te gènes la masquer après ton tri.

Pour ce qui est des dates, Excel ne gère les dates qu'à partir de 1900. L'astuce utilisée en général est le rajout de 800 ans. Pourquoi 800 et pas 600 ou 700? Parce que (sans utilité sur ton fichier), 800 ans plus tard, les jours de la semaines sont identiques.

Ainsi si le 28 février 2016 est un dimanche, le 28 février 2816 sera aussi un dimanche, ce qui peut être utiles pour d'autres calculs.

Cordialement

bonjour amadeus, mFerrand et le forum

=SI(NBCAR(A2)>4;(GAUCHE($A2;NBCAR(A2)-4)&DROITE($A2;4)+800)*1;DATE(A2+800;1;1))

comment fait tu pour inversé le sens car si je mets -800 au lieu de + 800 la formule marque valeurs

je m'y connais pas en formules

bon dimanche

Bonjour

Regarde en colonne C

Cordialement

bonjour Amadéus

merci pour le classeur qui est bien comme il est, sauf que je voudrais que ce soit la plus ancienne date qui démarre la colonne et non le plus récente

visu correction

Et de plus les dates qui n'ont que l'année ne devrais pas être écrite en 01/01/1722 mais rester 1722

Bonjour

merci pour le classeur qui est bien comme il est, sauf que je voudrais que ce soit la plus ancienne date qui démarre la colonne et non le plus récente

Oui...oui, pour cela, il te suffit de lire parmi les messages précédents, la réponse y est déjà.

Et de plus les dates qui n'ont que l'année ne devrais pas être écrite en 01/01/1722 mais rester 1722

Vu ton expérience sur le Forum, je pense que modifier l'argument dans la formule donnée

=SI(NBCAR(A2)>4;(GAUCHE($A2;NBCAR(A2)-4)&DROITE($A2;4)+800)*1;DATE(A2+800;1;1))

ne devrait pas poser de gros problèmes

=SI(ConditionVRAI,résultat1;sinon résultat 2)

où DATE(A2+800;1;1)

se remplace par TEXTE(A2+800;"Standard")

Cordialement

bonsoir amadéus et le forum

Vu ton expérience sur le Forum, je pense que modifier l'argument dans la formule donnée

je m'y connais pas en formules mais plus en vba dit dans mon post du 28/2 a 15h26

bon je tester ta dernière formule

Rechercher des sujets similaires à "rangement date colonne"