Modifier date sous Excel

Résolu
Hello,

j'ai un petit problème sous Excel.
Je fais un extract et j'obtient des données sous forme de tableau, que j'aimerai classer par date. Par contre, les dates sont écrites sous la forme 'DD/MM/AAAA dans la cellule, mais s'affiche DD/MM/AAAA (même chose, sans l'apostrophe)

Je pense que c'est cette apostophe qui fait que je ne peux pas classer mes dates chronologiquement. Et je ne peux pas a supprimer autrement que supprimer tout un à un à la main (j'ai tenté le faire un remplacement de l'apostrophe par rien, mais excel ne trouve pas cette apostrophe)

je ne sais pas trop comment faire, si quelqu'un a une idée ou déjà eu ce problème, je suis preneur

merci d'avance !

6 réponses

  1. Bonjour,

    Est-ce que ce ne serait pas un problème de format de cellules?

    Les cellules sont peut-être au format texte et c'est pour cela que tu ne peux pas les classer chronologiquement. Essayes de changer le format des cellules en date.

    A+
    0
    1. Il y a 3 sortes "d'apostrophe", as-tu essayé de copier/coller l'apostrophe présente dans tes cellules pour le remplacement ?

      Les 3 sortes :
      - '
      - '
      - '
      0
      1. Créer une nouvelle colonne, par exemple B.
        Avec la donnée date en A1, écrire en B1 =cnum(A1). Lui donner le format date souhaité (format/nombre/date).
        Il suffit ensuite de copier la même chose dans les cellules en dessous.

        Michel
        0
        1. 1) Le format de cellule est bien date.
          2) Aucun type d'apostrophe n'a fonctionné
          3) le méthode de mic13710 fonctionne parfaitement ! Pour info, à quoi correspond cnum() ?

          Merci à vous !!
          0
          1. cnum = conversion d'un texte en nombre.

            Michel
            0
          2. merci beaucoup !
            Pour info sir qqun souhaite l'utiliser en macro ou autre, cnum = value en anglais
            0
          3. par contre, petit problème... j'utilise cetet fonction en macro, c'est a dire value. le problème, c'est que ca me met la date sous format américain. Je pars donc d'un texte sous format DD/MM/AAAA
            et avec value j'arrive à MM/DD/AAAA. Ce qui fait que mes jours deviennent des mois et inversement.

            Peut on contrer ca ?
            0
          4. Je ne comprends pas très bien pourquoi vous passez par une macro pour une fonction qui existe déjà. Mais pourquoi pas.
            En macro, pour écrire la date comme vous le souhaitez, il faut spécifier le format :
            .NumberFormat = "dd/mm/yyyy"

            Michel
            0
          5. j'ai une bonne tappé de fichiers à traiter comme ca, et ce régulièrement. Du coup un macro permet de la faire directement.

            le problème est que des que je convertis le texte en nombre avec value, ca prend le texte comme si c'était un format anglais à la base, alors qu'il est en francais. Ducoup ca m'inverse les jours et les mois. Donc meme si je modifie le format apres, les jours et les mois restent unverser, ca ne modifie que l'affichage.
            0
        2. Contributeur
          Bonjour
          Un petit tuyau pour transformer des dates texte en num à condition que le libellé soit conforme à l'affichage num soit 'j/m/a
          Sélectionner une cellule vide
          la copier
          sélectionner le champ à modifier
          collage spécial / addition

          Quant à l'affichage de date inversée, avez vous vérifier le type d'affichage dans le panneau de configuration du PC option régionales et linguistiques?

          crdlmnt

          0
          1. C'est vrai Vaucluse, j'oublie toujours cette solution du collage avec addition. C'est à mon avis la solution la plus simple car elle peut se faire sur les mêmes cellules de départ.

            Michel
            0
          2. Merci beaucoup à vous 2, ca marche nickel ! Les options régionales et linguistiques étaient ok, mais utiliser cells().value ne fonctionnait pas chez moi (problème d'échange mois / jours)
            Par contre, l'écrire sous la forme

            ActiveCell.FormulaR1C1 = "=VALUE(RC[-1])"
            ActiveCell.NumberFormat = "dd/mm/yyyy"

            fonctionne. Allez savoir pourquoi...

            La méthode de Vaucluse fonctionne très bien aussi ! Merci encore !
            0
        3. Les lignes de macro sont issues de l'enregistreur avec un simple rajout pour la mise en forme dd/mm/yyyy pour vous indiquer que l'écriture de date via les macros est possible.
          Ce ne sont que des bases qu'il vous faut bien entendu adapter à votre besoin dans une macro plus élaborée.

          Bonne continuation,

          Michel
          0