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 :

[A-03] Problème de date inversée lors de la copie d'un USERFORM vers une cellule


Sujet :

Macros et VBA Excel

  1. #1
    Débutant
    Inscrit en
    Décembre 2007
    Messages
    1 235
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1 235
    Points : 269
    Points
    269
    Par défaut [A-03] Problème de date inversée lors de la copie d'un USERFORM vers une cellule
    Bonjour, j'ai un souci que j'avais déja rencontré,

    J'ai un USF avec un contrôle calendar 11.0.
    Quand je choisi une date dans mon calendrier, je clic sur un bouton, et la date vient s'inscrire dans une textBox.

    Le code du bouton est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaTxtBox = Calendrier.Value
    Ensuite, je valide mon USF afin de venir mettre la date dans une cellule de ma feuille Excel.

    Mais là au lieu de coller par exemple 01/02/09 il va me mettre 02/01/09

    Et sa pour toutes les dates.

    Lors de mon code de validation de mon bouton valider du formulaire, j'ai ajouté:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    Private Sub OK_Click()
     
     Sheets("Données").Visible = True
     
    If Emetteur.Value = "" Then
     
    MsgBox "Veuillez remplir le champ avant Technicien avant de valider votre saisie"
    Exit Sub
     
    Else
     
    Set cellule = Worksheets("Demande de travaux").Range("A5")
     
    Do While Not IsEmpty(cellule)
      Set cellule = cellule.Offset(1, 0)
    Loop
     
    cellule.Value = UserForm1.Emetteur.Value
    cellule.Offset(0, 1).Value = CDate(Date1)
    cellule.Offset(0, 2).Value = UserForm1.Ligne.Value
    cellule.Offset(0, 3).Value = UserForm1.Machine.Value
    cellule.Offset(0, 4).Value = UserForm1.TypeDinter.Value
    cellule.Offset(0, 5).Value = UserForm1.Trav.Value
    cellule.Offset(0, 6).Value = UserForm1.Date1.Value
     
    MsgBox "La saisie est términée!"
     
    End If
     
    Unload UserForm1
    UserForm3.Show
     
     Sheets("Données").Visible = False
     
    End Sub
    J'ai rajouté CDate afin de réinverser la date mais rien ne se passe quelqu'un peut-il m'aider?

    Merci

  2. #2
    Membre confirmé Avatar de drakkar_agfa
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 618
    Points : 638
    Points
    638
    Par défaut
    Bonjour,

    Petite question, est-ce que le format de la cellule est en Date anglaise?

    Et si tu utilise un msgbox au lieu de placer la date dans la cellule, est-ce que l'affichage est identique au txtbox?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Janvier 2008
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 105
    Points : 35
    Points
    35
    Par défaut
    Bonjour,

    Pour une fois que je peux donner un avis j'en profite... Il met arriver le même soucis sur une macro. Le format JJ/MM/AAAA était bien indiqué dans ma macro le format des cellules en français et du jour au lendemain la date est passé en format anglais... sans aucune raison. J'ai donc été obligé de modifier mon code en MM/JJ/AAAA pour qu'il m'écrive les dates en français...

    Essaye ça ne coûte rien...

  4. #4
    Débutant
    Inscrit en
    Décembre 2007
    Messages
    1 235
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1 235
    Points : 269
    Points
    269
    Par défaut
    Bonsoir, le format de ma date dans ma cellule est bien en *JJ/MM/AAAA

    Donc là j'avoue que ne ne comprend pas...

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

    Essayez avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Date1 = DateSerial(Right(Date1, 4), Mid(Date1, 4, 2), Left(Date1, 2))
    ou suivant le cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Date1 = DateSerial(Right(Date1, 2), Mid(Date1, 4, 2), Left(Date1, 2))

  6. #6
    Débutant
    Inscrit en
    Décembre 2007
    Messages
    1 235
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1 235
    Points : 269
    Points
    269
    Par défaut
    Je met sa où?

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

    J'ai supposé que "Date1" était la variable contenant la date, donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    cellule.Value = UserForm1.Emetteur.Value
    Date1 = DateSerial(Right(Date1, 4), Mid(Date1, 4, 2), Left(Date1, 2))
    cellule.Offset(0, 1).Value = Date1

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

Discussions similaires

  1. [XL-2010] Problème de date inversion jour/mois
    Par gigalia dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/10/2013, 11h31
  2. [XL-2003] Format date inversé lors de la copie
    Par mikadoo57 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/01/2013, 21h00
  3. Format de dates inversées lors d'un publipostage
    Par nathalie02820 dans le forum Launchpad (ex-Infoview)
    Réponses: 7
    Dernier message: 18/10/2012, 19h13
  4. Problème de date: Inversion jour et mois dans cellule de résultat
    Par tic59 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 04/11/2010, 21h04
  5. problème de date inversée!EXCEL 07
    Par bahman dans le forum Excel
    Réponses: 5
    Dernier message: 18/08/2008, 08h28

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