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 de vba


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Points : 151
    Points
    151
    Par défaut format de date de vba
    Bonjour,

    Je souhaiterais pouvoir formater des dates en VBA et je ne trouve pas comment, sauf en créant un morceau de code.
    Y a-t-il une instruction en une ligne?
    Du genre: obtenir jj-mm-aa au lieu de jj/mm/aa,
    Et pour les heures ne pas utiliser les ' : '.

    Merci si vous pouvez m'aider.

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    un test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim dte As Date
    dte = DateSerial(1986, 11, 24) + TimeSerial(11, 52, 17)
    MsgBox Format(dte, "dd_mm_yyyy") 'format date
    MsgBox Format(dte, "hh mm") 'format heures minutes
    MsgBox Format(dte, "dd-mm-yyyy hh.mm") 'format complet
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  3. #3
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 696
    Points
    6 696
    Didier Gonard

    Dernier tutoriel :
    Le VBA qu'est ce que c'est ?
    Tutoriels : Voir la liste de mes tutoriels Excel & VBA et mon site pro sur ma Page DVP
    Cours et tutoriels pour apprendre Excel
    N'oubliez pas de mettre : ..quand c'est le cas !

  4. #4
    Membre habitué
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Points : 151
    Points
    151
    Par défaut
    Merci mercatog .

    J'ai copier-coller le code que tu me donnes, donc sans fautes, mais j'obtiens une erreur 450 suivante :

    Erreur de compilation.
    Nombre d'arguments incorrects ou affectation de propriété incorrecte.

    Merci ormonth pour les adresses, j'avais déjà vu, mais obtenu l'erreur.
    D'où cela peut-il venir ?

    J'ai Excel 2003.

    Merci.

  5. #5
    Membre éclairé Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Points : 879
    Points
    879
    Par défaut
    bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x = Format(DateSerial(Year(Date), Month(Date), Day(Date)), "dd-mm-yy")
    isabelle

    Merci de m'aider à votre tour en indiquant si le problème est résolu.
    faite un clic sur le bouton en bas à gauche de la page.
    http://club.developpez.com/regles/#L4.12

  6. #6
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 696
    Points
    6 696
    Par défaut
    Je souhaiterais pouvoir formater des dates en VBA et je ne trouve pas comment, sauf en créant un morceau de code.
    à quelle fin ?

    sinon...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Bizarroidale()
    Dim dtmMadate As Date
     
    dtmMadate = #4/8/2010 10:19:00 PM#
    With Cells(10, 2)
       .Value = dtmMadate
       .NumberFormat = "dd-mm-yyyy hh~mm"
    End With
    End Sub

    cordialement,

    Didier
    Didier Gonard

    Dernier tutoriel :
    Le VBA qu'est ce que c'est ?
    Tutoriels : Voir la liste de mes tutoriels Excel & VBA et mon site pro sur ma Page DVP
    Cours et tutoriels pour apprendre Excel
    N'oubliez pas de mettre : ..quand c'est le cas !

  7. #7
    Membre habitué
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Points : 151
    Points
    151
    Par défaut
    Merci ormonth,

    Il reste toujours les ':' entre heures et minutes.
    Le but est le suivant. Dans un code VBA pour sauvegarder, j'ajoute le temps pour définir la sauvegarde. Il ne doit pas y avoir de '/' ni de ':' , c'est pourquoi je veux un format acceptable, sans avoir à changer les habitudes dans Windows.

  8. #8
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 696
    Points
    6 696
    Par défaut
    Il reste toujours les ':' entre heures et minutes.
    ca dépend du contexte :



    c'est pourquoi je demandais :

    à quelle fin ?
    tu dis :
    Dans un code VBA pour sauvegarder, j'ajoute le temps pour définir la sauvegarde.
    Est-ce que ton but est de sauvegarder un fichier avec un horodatage dans le nom qui aurait comme particularité d'éviter les : qui sont refusés dans le nommage des fichiers
    Dans quel cas c'est un code du genre qu'il te faut..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim strExtractName As String
    Dim strHorodat As String
    strHorodat = Format(Date, "dd-mm-yy") & " " & Format(Time, "h-mm-ss")
    strExtractName = gvStrChemS12 & "Extraction-Liste " & gvstrTrigramme & " du " & strHorodat
    Workbooks(wkbPass).SaveAs Filename:=strExtractName
    ou :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub HoroSauv()
    Dim strExtractName As String
    Dim strHorodat As String
    Dim dtmMadate As Date
     
    dtmMadate = #4/29/2010 10:19:00 PM#
    strHorodat = "le " & Format(dtmMadate, "dd-mm-yyyy ") & " a  " & Format(dtmMadate, "hh-mm-ss")
    ThisWorkbook.SaveAs Filename:="D:\" & "MonClasseur " & strHorodat
     
    End Sub
    cordialement,

    Didier
    Didier Gonard

    Dernier tutoriel :
    Le VBA qu'est ce que c'est ?
    Tutoriels : Voir la liste de mes tutoriels Excel & VBA et mon site pro sur ma Page DVP
    Cours et tutoriels pour apprendre Excel
    N'oubliez pas de mettre : ..quand c'est le cas !

Discussions similaires

  1. Format de date en VBA
    Par lucien(67) dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 22/01/2013, 19h44
  2. format de date dans vba
    Par Invité dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/07/2008, 20h26
  3. Réponses: 4
    Dernier message: 15/03/2007, 07h02
  4. [VBA-EXCEL] format de date lors d'écriture dans une cellule
    Par ustilago dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/02/2007, 17h44
  5. [VBA] Pb de format des dates dans un état
    Par linda15975 dans le forum IHM
    Réponses: 45
    Dernier message: 21/06/2005, 14h49

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