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 :

[E-03] Date commençant par 0


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de Iloon
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 70
    Par défaut [E-03] Date commençant par 0
    Bonjour à tous !

    Me revoilà sur ce forum pour vous exposer un petit souci.
    J'ai regardé les différents posts à ce sujet mais je n'ai pas trouvé mon bonheur.

    Lorsque j'entre une date dans une cellule au format jjmmaaaa, excel m'enlève le "0" du début de la date si j'entre par exemple 01022009.
    Or, j'exécute ensuite une macro utilisant "Mid" pour récupérer le mois concerné.
    Alors si le 0 du début de la date est enlevé par excel, je me retrouve avec 2 chiffres éronnés au lieu d'obtenir ceux correspondant au mois.

    Pour l'affichage, j'ai mis un format personnalisé : #_###_ ####" afin d'y voir plus clair lorsque la date est entrée.
    Cela me donne comme affichage : 01 02 2009.

    J'arrive à conserver le 0 du début de la date lorsque que je mets le format suivant : "0#_###_####" (Ce qui n'a pas pour effet de rajouter un 0 aux dates commençant par deux chiffres).
    Mais cela ne permet que d'améliorer l'effet visuel, en effet, lorsque je clique dans la case, les chiffres affichés dans la barre de formule ne contiennent pas le 0 au début, ce qui fausse ma macro avec "Mid".

    J'espère que j'ai été assez claire...

    Pensez-vous savoir d'où cela provient et comment je pourrai résoudre cela ?

    Merci à tous par avance !

    Iloon.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Dans le premier cas, ta date est interprété comme un chiffre, car il n'y a pas les séparateurs de date, donc le 0 disparait.

    Un formatage n'est qu'un aspect visuel et ne change pas les données qui sont saisies, donc tu perds toujours le 0.

    Soit tu saisies avec un format Date correcte 01/01/2009, où il faut mettre une ' devant le chiffre pour garder le 0.

    Il y a peut-être une autre solution, mais

    Philippe

  3. #3
    Membre confirmé Avatar de Iloon
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 70
    Par défaut
    Bnjour, tu m'as donné une bonne piste Philippe, j'ai mis les dates au format standard en les entrant comme cela : '01/02/2009 et cela fonctionne parfaitement, avec un Mid(Cellule,4,2), je parviens à retrouver les deux chiffres correspondant aux mois.

    Je ne connaissais pas l'astuce du '.

    Donc tu m'as bien aidée, merci beaucoup !

    A bientôt


    Iloon

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re

    En théorie, tu n'as pas besoin du ' si tu utilises le format date (à tester).

    Philippe

  5. #5
    Membre confirmé Avatar de Iloon
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 70
    Par défaut
    En fait le format date ma bloquait pour ma macro, ça m'empechait d'avoir les bons résultats pour le "Mid".

    Merci en tout cas !

    Iloon.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Re

    Dans ta macro en utilisant la fonction Format ou en essayant avec Cstr cela devrait te permettre d'éviter ', à faire avant le Mid.

    Philippe

  7. #7
    Membre confirmé Avatar de Iloon
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 70
    Par défaut
    Oh c'est gentil mais j'ai pas envie de me compliquer la vie, ça fonctionne comme ça et je suis contente !

    Merci encore,

    Iloon.

  8. #8
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Par défaut
    Salut Iloon et le forum
    Oh c'est gentil mais j'ai pas envie de me compliquer la vie, ça fonctionne comme ça et je suis contente !
    C'est une galéjade ?
    Tu ulilises une date dans une cellule =>
    format personnalisé de type jj mm aaaa
    Tu veux en extraire le mois : pourquoi avec Mid qui est un opérateur texte, et pas avec Month() qui extrait le mois non pas en texte, mais en nombre ?
    A+

  9. #9
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    Bonsoir

    Pensez-vous savoir d'où cela provient et comment je pourrai résoudre cela ?
    Clique sur le bouton 'Démarrer' du PC.
    Sélectionne le menu 'Panneau de configuration'.
    Double clique sur l'icône 'Options régionales et linguistiques'.
    Sélectionne l'onglet 'Option régionales' dans la boîte de dialogue.
    Clique sur le bouton 'Personnaliser'.
    Sélectionne l'onglet 'Date'.

    Vérifie que le champ "Format de date courte" est jj/MM/aaaa.


    Sinon, tout comme Gorfael, il existe des fonctions prévues dans Excel pour extraire le mois :
    http://silkyroad.developpez.com/excel/dateheure/



    bonne soirée
    michel

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 30
    Dernier message: 17/11/2012, 17h42
  2. Résultat commençant par un chiffre avec requête SELECT
    Par nicolas.pissard dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/04/2010, 14h31
  3. Classer des messages par date ET par pertinence
    Par pocpoc2 dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 04/07/2005, 11h54
  4. [Layout-Date] Configuration par fichier
    Par Koko22 dans le forum Struts 1
    Réponses: 4
    Dernier message: 28/07/2004, 10h39
  5. [procédure stockée] table temporaire commençant par #???
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 23/04/2004, 13h23

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