Passer le texte d'une formule de VBA en Excel

Résolu
PlacageGranby Messages postés 402 Statut Membre -  
PlacageGranby Messages postés 402 Statut Membre -
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

  1. Normad Messages postés 112 Date d'inscription   Statut Membre Dernière intervention   40
     
    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
  2. PlacageGranby Messages postés 402 Statut Membre 26
     
    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
  3. PlacageGranby Messages postés 402 Statut Membre 26
     
    Range("A1").Value = Format(Month(Now), "00")

    Me donne 09-01-1900 00:00:00
    0
  4. PlacageGranby Messages postés 402 Statut Membre 26
     
    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