XL 2010 Empêcher conversion date FR en US

  • Initiateur de la discussion Initiateur de la discussion StagiairePasPayé
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

StagiairePasPayé

Guest
Bonjour à tous,
c'est encore moi.
J'ai un fichier excel contenant des affaires et dans chaque ligne il y a des dates, mon problème est que je veux les recopier dans un autre fichier sauf qu'elle pas du format FR au format US. Code pour la copie :
VB:
While colonne <> 18
        lot1SuiviSydev.Cells(i, colonne).NumberFormat = "mm / dd / yyyy"
        lot1Recap.Cells(i, colonne).NumberFormat = "dd / mm / yyyy"
       
        copieValue = lot1SuiviSydev.Cells(i, colonne).Value
       
       
        copieBackColor = lot1SuiviSydev.Cells(i, colonne).Interior.ColorIndex
        copieFontBold = lot1SuiviSydev.Cells(i, colonne).Characters.Font.Bold
        copieFontColor = lot1SuiviSydev.Cells(i, colonne).Characters.Font.Color
        copieBorder = lot1SuiviSydev.Cells(i, colonne).Borders.Value
        lot1Recap.Activate
       
        With lot1Recap.Cells(i, colonne)
            .Value = Format(copieValue, "dd/mm/yyyy")
            With .Characters.Font
                .Bold = copieFontBold
            End With
        End With
       
        colonne = colonne + 1
    Wend
 
Mettez une instructions MsgBox TypeName(copieValue) pour voir ce qui est affecté par Excel à cette variable,
et MsgBox TypeName(Format(copieValue, "dd/mm/yyyy")) pour voir ce que vous voulez lui faire avaler plus loin.
D'ailleurs vous ne changer pas copieValeur entre temps, alors à quoi ça sert ?
 
bonjour et merci, effectivement le type de ma variable est string, même avec format(), lorsque je rajoute CDate() excel me renvoie une erreur d'incompatibilité de type. Je ne comprends vraiment pas pourquoi.
 
Bonjour,

En utilisant la propriété Value2 dont la valeur est indépendante du format.

VB:
copieValue = lot1SuiviSydev.Cells(i, colonne).Value2
Puis
Code:
 With lot1Recap.Cells(i, colonne)
            .Value2 = copieValue

Bon week-end
 
Dernière édition:
Bonsoir @Efgé

Euh ben oui, c'est le résultat attendu🙂, une valeur indépendante du format et qui peut être formatée à souhait (date FR ou US selon besoin)
D'ailleurs pour vba Value2 pour un nombre est toujours un Double, pas un entier.

Bonne soirée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
839
Réponses
2
Affichages
1 K
Réponses
2
Affichages
1 K
T
  • Question Question
XL pour MAC Recherche date
Réponses
5
Affichages
2 K
tdenis
T
Retour