> Tous les forums > Forum Bureautique
 Excel 2016 ne trie pas convenablement les date du XIXe et du XXe s
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
lafricain
  Posté le 15/01/2018 @ 23:32 
Aller en bas de la page 
Petit astucien

Bonjour,

Pour quelle raison les dates avant le 1 janvier 1900

sont-elles tassées à gauche et celles du 1er janvier 1900 et suivantes sont-elles tassées à droite. En outre pourquoi toutes les dates avant le 01-01-1900 sont elles à la fin du tri mais bien sûr dans leur ordre chronologique tandis que celles du 01-01-1900 et suivantes sont au début du tri mais toujours dans leur propre ordre chronologique Que peut-on faire pour remédier à cette situation? Merci. L'Africain

Publicité
ferrand
 Posté le 16/01/2018 à 04:06 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

Excel ne reconnaît de dates qu'à partir du 1er janvier 1900, et stocke les dates comme nombres (appelés numéros de série, le 1 étant le 1er janvier 1900). Etant des nombres, les dates se cadrent à droite dans la cellule, comme tout nombre.

Les dates antérieures au 1er janvier 1900 ne sont pas reconnues comme dates, Excel les considère comme du texte, qui ainsi se cadre à gauche dans la cellule.

Lors d'un tri, les nombres sont placés avant le texte (dans l'ordre croissant), les dates antérieures au 1er janvier 1900 se retrouvent donc à la fin.

Il n'y a pas de solution simple avec Excel. Il faut aussi tenir compte que les dates antérieures au 1er mars sont erronées : Microsoft a introduit un 29 février 1900 qui n'a jamais existé (pour de basses raisons de concurrence avec Lotus à l'époque, qui avait fait cette erreur) et n'a jamais rectifié, ce qui fait qu'Excel considère le 1er janvier 1900 comme un dimanche alors qu'il s'agissait d'un lundi.

VBA gère également les dates comme numéros de série, mais sans les erreurs d'Excel et reconnaît les dates antérieures à 1900. On peut imaginer de travailler sur les dates entièrement en VBA, mais ce n'est pas une mince affaire :

- il y a accord entre Excel et VBA à partir du 1er mars 1900 (n° de série : 61)

- il y a décalage d'un jour dans les n° de série 1 à 60 : le 1 est pour VBA le 31 déc. 1899 (1er janv. 1900 pour Excel, le 60 est pour VBA le 28 févr. 1900 (le fameux 29 pour Excel !)

- et pour VBA il y a un n° de série 0 (30 déc. 1899) et des n° négatifs : jusqu'à -657434 que VBA considère comme le 1er janv. de l'an 100

- mais VBA gère les dates exclusivement en calendrier grégorien proleptique (comme si le calendrier grégorien avait toujours existé, alors que son entrée en vigueur est le 15 oct. 1582 et que cela s'est échelonné jusqu'au XXe siècle bien entamé selon les pays).

Mais si on travaille en VBA, il faudra empêcher Excel d'intervenir sur les résultats... Je ne vois qu'un seul moyen, c'est de forcer l'inscription des dates en format Texte. On aura aussi diverses corrections à opérer selon les plages de dates que l'on couvre...

Cordialement.

lafricain
 Posté le 17/01/2018 à 05:34 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Ferrand,

Tu es un puis de science et à chacune de tes interventions je constate chaque fois qu'il est plus profond que je ne me l'imaginais.

Merci mille fois

L'Africain

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
20,99 €Carte mémoire microSDXC UHS-I SanDisk A1 Ultra 128 Go à 20,99 €
Valable jusqu'au 06 Avril

Le vendeur sérieux Base propose actuellement sur Amazon la carte mémoire microSDXC UHS-I SanDisk A1 Ultra 128 Go à 20,99 € livrée gratuitement. Cette carte mémoire offre des vitesses jusqu'à 100 Mo/s et est idéale pour les téléphones, caméras et appareils photo HD.


> Voir l'offre
38,99 €Abonnement Xbox Game Pass Ultimate 6 mois à 38,99 €
Valable jusqu'au 07 Avril

Amazon fait une promotion sur l'abonnement Xbox Game Pass Ultimate 6 mois qui passe à 38,99 €, ce qui correspond à 3 mois gratuits. Le code jeu vous sera envoyé par email. Ce code vous permettra de jouer pendant 6 mois à plus de 100 jeux sur Xbox One et Windows 10. Vous pourrez ainsi jouer à Ori & the Will of the Wisps, The Outer Worlds, Gears 5, World War Z, Sea of thieves, Minecraft, ... Vous trouverez la liste complète des jeux ici.


> Voir l'offre
GratuitJeu PC Rayman Legends gratuit
Valable jusqu'au 05 Avril

Ubisoft offre actuellement l'excellent jeu PC Rayman Legend. Rayman, le héros du jeu de plates-formes le plus acclamé et récompensé en 2011, revient avec Rayman Legends. Rayman, Globox et les Ptizêtres se baladent dans la Croisée des Rêves et découvrent une tente ornée de peintures qui racontent l’histoire de 5 mondes légendaires. En inspectant l’une d’entre elles, ils se retrouvent aspirés et projetés dans un monde inconnu… L’aventure peut commencer ! Rayman et sa bande doivent alors se frayer un chemin dans chacun de ces mondes inspirés des contes et légendes célèbres pour sauver le leur.


> Voir l'offre

Sujets relatifs
excel 2016 format date
Excel 2016 Tableau Croisé Dynamique (TCD)
suite 2016 word dans excel
excel 2016 regroupement dans tableau croisé dynamique (tcd)
Insérer date excel
Excel 2016 en-tête et pied de page
Formule Excel/VBA insertion date fixe conditionnellement
Problème de date dans Excel
EXCEL: recherche nombre selon date
comment pouvoir personnaliser les onglet et fonctions sous excel 2016
Plus de sujets relatifs à Excel 2016 ne trie pas convenablement les date du XIXe et du XXe s
 > Tous les forums > Forum Bureautique