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 :

Format de date


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 201
    Par défaut Format de date
    Bonjour,

    j'ai un problème pour trier des lignes en fonction de la date. Quand je rempli mes cellules je fais :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CelluleTemp.Offset(i, 5) = Format(Cellule.Offset(i, 10), "dd/MM/yyyy")
    Le tri me donne des résultats incohérent. En fait en testant avec la fonction Month(CDate), je me suis rendu compte que quand ma date allait de 01/XX/XXXX à 12/XX/XXXX il me considérait les jours comme des mois:

    01/11/2006 -> 1
    12/05/2006 -> 12

    et dès que ca dépasse 12 (décembre..) il prend le bon mois :

    28/11/2007 -> 11
    15/06/2007 -> 6

    Comment faut-il faire pour fixer cela?

    Merci,


    Laurent

  2. #2
    Membre chevronné Avatar de mordrhim
    Inscrit en
    Avril 2007
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Avril 2007
    Messages : 270
    Par défaut
    essaye de faire comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CelluleTemp.Offset(i, 5) = int(Cellule.Offset(i, 10)) 
    CelluleTemp.Offset(i, 5).NumberFormat = "DD/MM/YYY"
    et tiens nous au courant

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 201
    Par défaut
    Citation Envoyé par mordrhim
    essaye de faire comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CelluleTemp.Offset(i, 5) = int(Cellule.Offset(i, 10)) 
    CelluleTemp.Offset(i, 5).NumberFormat = "DD/MM/YYY"
    et tiens nous au courant
    Incompatibilité de type pour la fonction int.

    je comprend pas ta réponse random?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 201
    Par défaut
    ah je viens de comprendre. mais je fais comment avec mon string "20/11/2006", il faut que j'isole les composant de ma date?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 201
    Par défaut
    bon ben j'ai découpé ma date. Cela donne une ligne du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CelluleTemp.Offset(i, 5) = DateSerial(CInt(Right(Cellule.Offset(i, 10), 4)), CInt(Mid(Cellule.Offset(i, 10), 4, 2)), CInt(Left(Cellule.Offset(i, 10), 2))) ' date d'entrée
    Par contre dans ce cas la il faut à tout prix que la date soit renseigné de la forme dd/mm/yyyy sinon mes fonctions left mid et Right ne renverront pas le bon chiffre.. Mais dans mon cas je pense que c'est bon.

    En tout cas ca marche. Merci beaucoup à vous!

  6. #6
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Résolu?

    Oublié le petit clic?
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  7. #7
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 159
    Par défaut
    J'ai déjà eu le même problème, je ne l'ai jamais résolu, mais je suis persuadé que cela vient du fait que VBA est en anglais et Excel en Francais. Il faudrait peut être essayé avec une version anglaise de microsoft Office.

    Désolé de pas poucvoir en faire plus

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dateserial( month:=12,year:=2006,day:=11)

  9. #9
    Membre chevronné Avatar de mordrhim
    Inscrit en
    Avril 2007
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Avril 2007
    Messages : 270
    Par défaut
    han :
    merci random, la connaissait po vraiment celle la

Discussions similaires

  1. Format de date
    Par royrremi dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/06/2004, 17h32
  2. Détecter le format de date au démarrage
    Par stigma dans le forum Access
    Réponses: 2
    Dernier message: 20/02/2004, 11h04
  3. Réponses: 11
    Dernier message: 02/09/2003, 14h20
  4. Problème de Format de date
    Par titititi007 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/06/2003, 08h19
  5. Réponses: 3
    Dernier message: 06/05/2002, 18h24

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