simplifier les formules

L

ludo

Guest
bonjour,j'aimerais simplifier mes formules en vba mais je ne vois pas comment faire. Par exemple, plutot que de recopier plusieurs fois le morceau:

CONCATENATE(""blablabla "",RIGHT(R[-17]C[5])

dans une formule,le mieux serait de lui attribuer un nom.
j'ai essayé de faire :

Set Texte = CONCATENATE(""blablabla "",RIGHT(R[-17]C[5])
mais ça ne marche pas.
merci,si quelqu'un peut me débloquer.
Ludo.
 
L

ludo

Guest
exact et merci pour ton message;
la bonne formule est

CONCATENATE(""journée "",RIGHT(R[-20]C[5],LEN(R[-20]C[5])-1)),

mais en fait cela ne résout pas mon dilemme :
par souci de simplification je voudrais remplacer :

range("k7").FormulaArray = _
"=MATCH(CONCATENATE(""journée "",RIGHT(R[-20]C[5],LEN(R[-20]C [5])-1)),Feuil2!R[-23]C2:R[816]C2,0)"


par

range("k7").FormulaArray = _
"=MATCH(Texte,Feuil2!R[-23]C2:R[816]C2,0)"

en ayant préalablement posé :
texte=CONCATENATE(""journée "",RIGHT(R[-20]C[5],LEN(R[-20]C[5])-1))

Mais comment puis-je définir ainsi Texte car VBE refuse de valider cette definition
Suis-je sur la bonne piste en posant :
Set Texte=CONCATENATE(""journée "",RIGHT(R[-20]C[5],LEN(R[-20]C[5])-1))
?

je ne vois pas d'issue,et pourtant il y a certainement un moyen de definir et réutiliser un tronçon de formule en vba.

@+,
Ludo.
 
M

m.lecxe

Guest
Salut,

là, je crois que ton adresse R[-20]C[5] n'est pas bonne

essaies quelquechose du style

Sub test1()
Set T = Feuil2.[I51] 'à adapter
Set Zone = Feuil2.Range("B1:B850")'à adapter
Range("k7").FormulaArray = _
"=MATCH(""journée "" & RIGHT(" & T.Address & ",LEN(" & T.Address & ")-1)," & Zone.Address & ",0)"
End Sub

ou

Sub test2()
T = Feuil2.[I51].Address'à adapter
Zone = Feuil2.Range("B1:B850").Address'à adapter
Range("k7").FormulaArray = _
"=MATCH(""journée "" & RIGHT(" & T & ",LEN(" & T & ")-1)," & Zone & ",0)"
End Sub

et est tu sûr que tu as besoin d'une formule matricielle. si ce n'est pas le cas pose formula plutot que formulaarray.

@+
 

Discussions similaires

Réponses
11
Affichages
650

Statistiques des forums

Discussions
314 153
Messages
2 106 441
Membres
109 587
dernier inscrit
n.hachhach