Passer le texte d'une formule de VBA en Excel

Résolu/Fermé
PlacageGranby Messages postés 393 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019 - 3 sept. 2014 à 16:12
PlacageGranby Messages postés 393 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019 - 3 sept. 2014 à 17:21
Bonjour, voici une petite question.

Je veux créer un code pour une commande.
Ce code est composé des initiales de l'acheteur dans la feuille du fournisseur suivi de la date format AAMMJJ

La feuille de commande est créé de zero, donc la formule provient du code VBA.


J'utilisais :
Sheets(modele).Range("G10").Formula = "=LEFT('" & fournisseur & "'!F3)" & " & LEFT('" & fournisseur & "'!G3)& YEAR(TODAY())& MONTH(TODAY())& DAY(TODAY())"

Ce qui me donnait en excel :
=GAUCHE(Écologic!F3) & GAUCHE(Écologic!G3)& ANNEE(AUJOURDHUI())& MOIS(AUJOURDHUI())& JOUR(AUJOURDHUI())

Mais le résultat tronque les zero de la date.
j'obtiens AB1493 au lieu de AB140903

Après quelques test. je vois que la formule que j'aimerais avoir dans excel est :
=GAUCHE(Écologic!F3) & GAUCHE(Écologic!G3)& TEXTE(AUJOURDHUI();"aa")&TEXTE(AUJOURDHUI();"MM")&TEXTE(AUJOURDHUI();"jj")


Mais voilà, je bute sur comment passer TEXTE(AUJOURDHUI();"aa") via VBA dans excel.

4 réponses

Normad Messages postés 112 Date d'inscription dimanche 6 juin 2010 Statut Membre Dernière intervention 10 juin 2015 37
3 sept. 2014 à 16:41
Bonjour je ne connais pas TODAY sur ma version Excvel mais date, mai pour avoir le bon format du mois et du jour :

Format(Month(Date), "00")
Format(Day(Date), "00")
2
PlacageGranby Messages postés 393 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019 26
3 sept. 2014 à 17:10
Today() c'est l'équivalent de aujourdhui()

Ca permet en excel d'avoir la date du jour.

Je viens d'essayer :
Range("A1").Formula = "=Format(Month(" & Now & "), ""00"")"

Ca ne passe pas.

Aucun problème dans excel à faire une date, mais ma difficulté c'est de passer la formule via VBA de la macro à la feuille.
0
PlacageGranby Messages postés 393 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019 26
3 sept. 2014 à 17:14
Range("A1").Value = Format(Month(Now), "00")

Me donne 09-01-1900 00:00:00
0
PlacageGranby Messages postés 393 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019 26
3 sept. 2014 à 17:21
Bon, j'ai trouvé mon code VBA

Sheets(modele).Range("G10").Formula = "=LEFT('" & fournisseur & "'!F3)" & " & LEFT('" & fournisseur & "'!G3)& " & Right(Format(Year(Now), "00"), 2) & Left(Format(Month(Now), "00"), 2) & Left(Format(Day(Now), "00"), 2)

Au lieu de passer la commande de VBA à la formule d'excel, je me résoult a trouver la valeur en VBA, et passer la valeur déjà calculé à la feuille.

Ca me donne ca dans excel.
=GAUCHE(Écologic!F3) & GAUCHE(Écologic!G3)& 140903
0