Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Variable dans formule

2 réponses
Avatar
Infogroup
Bonjour à toutes et à tous,

j'ai une formule matricielle dans laquelle X vaut 10

Range("A3").FormulaArray = "=""Il y a "" & X & "" titres ( dont
""&COUNTA(B7:B" & Y1 + 6 & ")&"" sont en bibliothèque ) avec
""&ROUND(SUM(IF(LEN(D7:D" & Y1 + 6 & ")>0,1/(COUNTIF(D7:D" & Y1 + 6 &
",D7:D" & Y1 + 6 & ")),0)),0)&"" auteurs"""

si je mets 10 à la place de X la formule fonctionne.

si je mets X, j'ai une erreur.

Quelle doit être la synthaxde pour utiliser la variable dans ma formule ?

Merci par avance

Cordialement

Infogroup

2 réponses

Avatar
LSteph
Bonjour,

Voilà qui n'est pas directement une formule, c'est un bout de code VBA
consistant à poser une formule mais que tu donnes de façon incomplète.

Ta variable X , prend sa valeur comment, est déclarée où et selon quel
type . Comme elle n'est utilisée ici qu'en concaténation dans une chaine
donc ce serait string sauf si dans le reste du code que tu ne montre pas
ce X doit intervenir:

hypothèse basique:

Sub mamacro()
Dim X as string
X="10"

--
lSteph

Infogroup a écrit :
Bonjour à toutes et à tous,

j'ai une formule matricielle dans laquelle X vaut 10

Range("A3").FormulaArray = "=""Il y a "" & X & "" titres ( dont
""&COUNTA(B7:B" & Y1 + 6 & ")&"" sont en bibliothèque ) avec
""&ROUND(SUM(IF(LEN(D7:D" & Y1 + 6 & ")>0,1/(COUNTIF(D7:D" & Y1 + 6 &
",D7:D" & Y1 + 6 & ")),0)),0)&"" auteurs"""

si je mets 10 à la place de X la formule fonctionne.

si je mets X, j'ai une erreur.

Quelle doit être la synthaxde pour utiliser la variable dans ma formule ?

Merci par avance

Cordialement

Infogroup


Avatar
Infogroup
Merci LSteph, mais en cherchant un peu au hasard, je viens de trouver,

en fait il faut mettre un triple guillement de chaque côté de la variable,
ce qui donne :

""" & X & """ et dans ce cas, la formule fonctionne.

Merci tout de même de m'avoir répondu

Cdl

Infogroup


"LSteph" a écrit dans le message de
news:
Bonjour,

Voilà qui n'est pas directement une formule, c'est un bout de code VBA
consistant à poser une formule mais que tu donnes de façon incomplète.

Ta variable X , prend sa valeur comment, est déclarée où et selon quel
type . Comme elle n'est utilisée ici qu'en concaténation dans une chaine
donc ce serait string sauf si dans le reste du code que tu ne montre pas
ce X doit intervenir:

hypothèse basique:

Sub mamacro()
Dim X as string
X="10"

--
lSteph

Infogroup a écrit :
Bonjour à toutes et à tous,

j'ai une formule matricielle dans laquelle X vaut 10

Range("A3").FormulaArray = "=""Il y a "" & X & "" titres ( dont
""&COUNTA(B7:B" & Y1 + 6 & ")&"" sont en bibliothèque ) avec
""&ROUND(SUM(IF(LEN(D7:D" & Y1 + 6 & ")>0,1/(COUNTIF(D7:D" & Y1 + 6 &
",D7:D" & Y1 + 6 & ")),0)),0)&"" auteurs"""

si je mets 10 à la place de X la formule fonctionne.

si je mets X, j'ai une erreur.

Quelle doit être la synthaxde pour utiliser la variable dans ma formule ?

Merci par avance

Cordialement

Infogroup