Autres Formater plusieurs donnees en 1 seul donne numerique besoin macro vba !

LUYGYS

XLDnaute Occasionnel
Bonjour l' idée est de pouvoir formater plusieurs cellules en une seul donnée dans une autre cellule.
Un exemple excel pour comprendre mieux est fournie
Un macro VBA EXCEL peut le faire sans doute ?
Merci d'avance aux intéresses !
Cordialement

LUYGYS
 

Pièces jointes

  • NUMEROS FORMAT MACRO SPECIAL.xlsx
    10 KB · Affichages: 5

Staple1600

XLDnaute Barbatruc
Bonjour le fil

LUYGYS
Traduis la formule en anglais puisque apparemment celle la langue de la version Excel que tu utilises.
Ce que je viens de faire (avecc l'aide de l'enregistreur de macros)
=(DAY(R[11]C9)&MONTH(R[11]C9)&RIGHT(YEAR(R12C[7]),2)&TEXT(HOUR(R[11]C10),""00"")&INT(R[11]C11))*1"
Tu n'as plus qu'à modifier la formule de JHA en mettant le nom anglais des fonctions.
NB: Attention aux références des cellules (ici elles viennent de VBA et sont donc de type R1C1), donc ne pas faire un simple copier/coller de la formule "anglaise"
 
Dernière édition:

LUYGYS

XLDnaute Occasionnel
Bonjour le fil

LUYGYS
Traduis la formule en anglais puisque apparemment celle la langue de la version Excel que tu utilises.
Ce que je viens de faire (avecc l'aide de l'enregistreur de macros)
=(DAY(R[11]C9)&MONTH(R[11]C9)&RIGHT(YEAR(R12C[7]),2)&TEXT(HOUR(R[11]C10),""00"")&INT(R[11]C11))*1"
Tu n'as plus qu'à modifier la formule de JHA en mettant le nom anglais des fonctions.
NB: Attention aux références des cellules (ici elles viennent de VBA et sont donc de type R1C1), donc ne pas faire un simple copier/coller de la formule "anglaise"
Bonjour.
Merci pour la traduction.
Vous avez raison il fallait écrire la formule en anglais et ça marche.
Par contre si on veut qui la formule tienne compte des minutes et des centimes on fait comment ?
Cordialement.
LUYGYS
 

Pièces jointes

  • NUMEROS FORMAT MACRO SPECIAL.xlsm
    15.5 KB · Affichages: 5

patricktoulon

XLDnaute Barbatruc
re
bonjour
les "00" etant ignoré en vba comme excel dans le calcul des formule il faut les ramener a du string
a traduire en anglais
=(JOUR($I12)&MOIS($I12)&DROITE(ANNEE($I12);2)&TEXTE(HEURE($J12);"00")&ENT($K12))*1&DROITE("00"&K12-ENT(K12);2)

Capture.JPG


par vba ca pourrait etre ca
VB:
Function concat1(c1, c2, c3)
concat1 = Format(c1, "ddmmyy") & Format(c2, "hhnn") & Replace(c3, ",", "")
End Function

Sub test()
MsgBox concat1([i12], [j12], [k12])
End Sub


en formule
=concat1(I12;J12;K12)
 
Dernière édition:

LUYGYS

XLDnaute Occasionnel
re
bonjour
les "00" etant ignoré en vba comme excel dans le calcul des formule il faut les ramener a du string
a traduire en anglais


Regarde la pièce jointe 1045148

par vba ca pourrait etre ca
VB:
Function concat1(c1, c2, c3)
concat1 = Format(c1, "ddmmyy") & Format(c2, "hhnn") & Replace(c3, ",", "")
End Function

Sub test()
MsgBox concat1([i12], [j12], [k12])
End Sub


en formule
=concat1(I12;J12;K12)
Bonjour .
Merci c'est exactement ce que j'avais demande en VBA plutôt que une formule ....
Ca marche nickel.
Un grand merci encore .

Cordialement

LUYGYS
 

patricktoulon

XLDnaute Barbatruc
re
Oupss!Oupss!
attention!!
j'ai peut être omis une coquille vba com excel omettant les 0 la partie replace risque de gaffer a l'entier
donc correction
VB:
Function concat1(c1, c2, c3)
concat1 = Format(c1, "ddmmyy") & Format(c2, "hhnn") & Left(Replace(c3, ",", "") & "00", 4)
End Function

Sub test()
MsgBox concat1([i12], [j12], [k12])
End Sub
la c'est bon on est ok ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 163
Messages
2 085 860
Membres
103 006
dernier inscrit
blkevin