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

Macros et VBA Excel Discussion :

Contrôler le format d'un date saisie


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 480
    Par défaut Contrôler le format d'un date saisie
    Bonjour à tous,

    Je suis à la recherhce d'une fonction VBA qui contrôle le format d'une date saisie, c'est à dire que le format corresponde à dd/mm/yyyy.

    J'ai testé par mal de fonction mais elle ne fonctionnent pas à chaque fois.

    Merci par avance pour vos retours :-)

  2. #2
    Membre confirmé Avatar de ippo_master
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Septembre 2007
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Septembre 2007
    Messages : 71
    Par défaut
    Ça manque un peu de précision. La saisie de la date est libre via un textbox ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 480
    Par défaut
    Autant pour moi, la date est libre de saisie dans une cellule.

  4. #4
    Membre confirmé Avatar de ippo_master
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Septembre 2007
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Septembre 2007
    Messages : 71
    Par défaut
    J'aurais tendance à te conseiller d'anticiper ton problème plutôt que de vérifier après saisie si celle-ci correspond bien à un format date.
    La cellule de saisie est-elle toujours la même ? Si oui, il faudrait que tu joues sur un format personnalisé de type "Date"

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut.

    Dans une cellule, le format d'affichage se précise sans VBA et il n'y a pas de format de saisie. Ce la signifie que ce n'est pas le format de la cellule qui empêche une mauvaise saisie (on peut saisir sans souci du texte dans une cellule formaté en date) mais bien une validation de saisie qui restreint les possibilités de saisie dans une cellule.

    Ce que tu peux faire, c'est placer une validation sur la cellule qui impose que l'on saisisse une date dans une plage données (il y a des possibilités de formules légères), mais la personne pourra saisir n'importe quoi du moment que cela puisse être transformé en date. Après avoir placé la validation, tu ne pourras pas saisir "eare" ni une date n'entrant pas dans la plage acceptée, mais tu pourras saisir 44158 qui correspond au 23/11/2020, Excel se chargeant, grâce au format de la cellule, d'afficher cette valeur en date.

    Nom : 2020-11-23_113340.png
Affichages : 774
Taille : 15,1 Ko

    Nom : 2020-11-23_113357.png
Affichages : 713
Taille : 8,0 Ko

    Nom : 2020-11-23_113429.png
Affichages : 722
Taille : 2,6 Ko

    Nom : 2020-11-23_113651.png
Affichages : 735
Taille : 8,5 Ko

    Nom : 2020-11-23_113438.png
Affichages : 700
Taille : 2,7 Ko


    il faut noter que la validation est une propriété de la cellule et qu'un copier-coller "normal" remplace la validation de la cellule par celle de la cellule qui est copiée. il s'agit donc bien d'une validation "à la saisie".
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

Discussions similaires

  1. [XL-2010] VBA Regex sur date et heure pour contrôler le format
    Par Bragu Demon dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/02/2017, 11h47
  2. [MySQL] format de masque de saisie date(00/00/0000) et nombre(00 000 000 000)
    Par kitcarson23 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 10/12/2010, 10h29
  3. Réponses: 4
    Dernier message: 16/01/2008, 10h08
  4. formater un champ date dans un select
    Par sbeu dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 24/04/2006, 16h44
  5. [VB6][Expert Only ?][ADO] Format universel des dates
    Par HPJ dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 14/02/2004, 10h42

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