Date US/FR formulaire

Fermé
enimsay0 Messages postés 3 Date d'inscription mardi 23 mai 2017 Statut Membre Dernière intervention 24 mai 2017 - 23 mai 2017 à 17:02
f894009 Messages postés 17239 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 10 février 2025 - 24 mai 2017 à 12:16
Bonjour,

Je cherche à empêcher la conversion automatique d'une date issue d'un formulaire VBA en mm/jj/aaaa:
- mon formulaire affiche automatiquement la date du jour (via Date), modifiable.
- je rentre d'autres informations
- la macro copie la date (et les autres informations) dans les cellules dédiées d'un tableur excel

La date affichée dans le formulaire est bien en jj/mm/aaaa, mais lorsque la macro effectue la copie, le format se change automatiquement en mm/jj/aaaa.
La cellule concernée du tableur est bien au format date *jj/mm/aaaa

J'ai bien vu qu'il existait d'autres posts à ce sujet, qui datent de plusieurs années mais n'arrive pas à appliquer les solutions proposées.
J'ai excel VBA 2013

Merci beaucoup pour votre aide.



A voir également:

3 réponses

f894009 Messages postés 17239 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 10 février 2025 1 713
23 mai 2017 à 17:05
Bonjour,

Pouvez-vous mettre votre fichier a dispo
Pour transmettre un fichier,
Veillez a ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
il faut passer par un site de pièce jointe tel que cjoint.com

Allez sur ce site : https://www.cjoint.com/
Clic sur parcourir,
Cherche ton fichier,
clic sur ouvrir,
Clic sur "Créer le lien cjoint",
Copier le lien,
Revenir ici le coller dans une réponse...

ou
'mon partage
https://mon-partage.fr/
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
23 mai 2017 à 23:14
Bonjour,

Si tu ne veux pas mettre le fichier, mets au moins le code du formulaire.
0
enimsay0 Messages postés 3 Date d'inscription mardi 23 mai 2017 Statut Membre Dernière intervention 24 mai 2017
24 mai 2017 à 09:32
Bonjour,
Le fichier est relativement important et le code aussi, je pensais qu'il y avait une manipulation simple et un peu standard pour palier à ce problème, quelque soit le type de code.

Voici ci-dessous un extrait du code du formulaire

Private Sub UserForm_Activate()

Chemin1 = ThisWorkbook.Path
Fichier1 = ThisWorkbook.Name
Onglet0 = "Tableau de bord global"

With Workbooks(Fichier1).Sheets(Onglet0)

If testAjout = False Then
i = ActiveCell.Row
Me.ticketDemande = .Cells(i, 1).Value
Me.Contact_date_debut = .Cells(i, 2).Value
Else
'Création d'une nouvelle ligne
Me.ticketDemande = "New"
Me.Contact_date_debut = Date
End If
End With

End Sub

Private Sub UserForm_Initialize()

Chemin1 = ThisWorkbook.Path
Fichier1 = ThisWorkbook.Name
Onglet0 = "Tableau de bord global"
Onglet1 = "Listes"
Onglet2 = "Données source"

With Me
.ticketDemande = "New"
.Contact_date_debut = Date
End With
End Sub


Merci beaucoup
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
24 mai 2017 à 10:38
Dans cet extrait de code, il n'y a pas d'instruction qui écrit sur la feuille !!!!
0
f894009 Messages postés 17239 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 10 février 2025 1 713 > Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023
24 mai 2017 à 10:42
Bonjour,
C'est aussi ce que j'ai constate.....
0
enimsay0 Messages postés 3 Date d'inscription mardi 23 mai 2017 Statut Membre Dernière intervention 24 mai 2017
24 mai 2017 à 10:45
Tout à fait, car c'est au niveau de la définition de la date ("Date" défini je crois la date en américain) que j'ai un problème. En tout cas c'est ce que je suppose.
L'écriture est une insertion de la valeur dans la cellule, sans définition particulière:


With Workbooks(Fichier1).Sheets(Onglet0)

.Cells(n, 2).Value = Contact_date_debut.Value
end With

Peut être qu'il est en effet possible de pallier au problème à ce niveau?
0
f894009 Messages postés 17239 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 10 février 2025 1 713 > enimsay0 Messages postés 3 Date d'inscription mardi 23 mai 2017 Statut Membre Dernière intervention 24 mai 2017
24 mai 2017 à 12:16
Re,

ceci devrait aller:

With Workbooks(Fichier1).Sheets(Onglet0)
                .Cells(n, 2).Value = CDate(Contact_date_debut)
end With
0