IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Forcer Format date dans une colonne.


Sujet :

Excel

  1. #1
    Membre actif

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2011
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 370
    Points : 251
    Points
    251
    Par défaut Forcer Format date dans une colonne.
    Bonjour,

    Je voudrais dans une colonne forcer le formatage de la date au format ##/##/####.

    Si le format entré n'est pas bon=> message d'erreur.
    si lors d'un copier coller,une ou plusieurs cellule n'a pas le bon format => message d'erreur et coloration de la ou des cellules en erreur en rouge.

    Comment faire ca?

    Merci

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Tu peux utiliser la validation de données :
    Ruban Données > Validation de données > Autoriser = Date
    Mais je ne crois pas que ça marchera pour empêcher un copier/coller. Il est même probable que ce copier/coller éliminera la validation de données que tu aurais pu placer.

    Je ne suis pas sûr qu'il soit possible d'utiliser la Mise en Forme Conditionnelle. Une date étant une simple valeur numérique classique avec simplement un Format nombre particulier, je ne vois pas quelle formule pourrait la distinguer d'une valeur classique.
    A moins de mettre ta cellule au format texte, mais dans ce cas-là, tu perdrais toute possibilités de traitement sur les dates (tri, calcul, etc.).
    Et dans ce cas également, un copier/coller supprimerait ta mise en forme conditionnelle.

    La seule solution véritablement fiable est sans doute de passer par une macro VBA, par exemple une macro évènementielle sur l'évènement Change de ton onglet.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Septembre 2013
    Messages
    783
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Septembre 2013
    Messages : 783
    Points : 1 562
    Points
    1 562
    Par défaut
    Bonjour,

    La validation de données ne marche pas, sauf erreur, avec un copy paste
    => Vous pouvez par contre tester le format en le remettant (cellule supplémentaire ou dans un format conditionnel), sous la forme =TEXT(A1,"mm/dd/yy"), puis tester par =EXACT(A1,VALUE(B1)) que les deux cellules donnent le même résultat, sinon, lever une erreur (ou un format spécifique, .....)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    A  
    10/21/2014	10/21/14	TRUE
    45.00 02/14/00	FALSE
    J'espère que ça peut vous aider....
    "Idéalement nous sommes ce que nous pensons. Dans la réalité, nous sommes ce que nous accomplissons." A.Senna
    et n'oubliez-pas de développer des .... sourires ^_^

  4. #4
    Membre régulier
    Homme Profil pro
    Apprenti GEII
    Inscrit en
    Janvier 2014
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Apprenti GEII
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2014
    Messages : 83
    Points : 109
    Points
    109
    Par défaut
    Bonjour,

    un élément de réponse...

    en VBA, sur l'événement Change:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    If Target.column = le numéro de ta colone then
        Target.Value = Format(Target.value, "dd/mm/yyyy")
    end if
    si tu rentres une date par exemple 12/11/2014 ça marchera, et ton format de cellule est bien celui d'une date

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Pour les saisies pour peu qu'elles soient faites dans un format date valide le code suivant fera le nécessaire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim C As Range
        If Intersect(Target, [E:E]) Is Nothing Then Exit Sub
        For Each C In Intersect(Target, [E:E])
            If C.NumberFormat <> "m/d/yyyy" Then C.NumberFormat = "m/d/yyyy"
        Next
    End Sub
    Pour le copier-coller il faut utiliser
    le collage spécial soit "une valeur" soit une "formule".

Discussions similaires

  1. [XL-2007] Format date dans une colonne
    Par castours dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/07/2012, 13h32
  2. Reformatage de 2 types de dates dans une colonne
    Par jeo13 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 25/03/2008, 08h32
  3. Compter un nombre de date dans une colonne
    Par MASK55 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 07/11/2007, 11h17
  4. comment forcer le format date dans une requête
    Par chauvex99 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 11/07/2007, 09h49
  5. Format date dans une requete SQL
    Par noratec dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 10/01/2007, 12h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo