Inscrire une formule dans une cellule

Fermé
Needhelp - 14 févr. 2014 à 17:01
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 17 févr. 2014 à 17:50
Bonjour,

Je voudrais inscrire la formule:

SI(ESTNA(SI(BF18="OUI";LIEN_HYPERTEXTE("mailto:"&RECHERCHE(AS18;DONNEESLISTES!$A$2:$A$239;DONNEESLISTES!$L$2:$L$239)&","&LIEN_HYPERTEXTE(BG18)&","&RECHERCHE(AF18;DONNEESLISTES!$T$2:$T$10;DONNEESLISTES!$AD$2:$AD$10));""));"";SI(BF18="OUI";LIEN_HYPERTEXTE(CB18)&","&LIEN_HYPERTEXTE(BG18)&","&LIEN_HYPERTEXTE(RECHERCHE(AF18;DONNEESLISTES!$T$2:$T$10;DONNEESLISTES!$AD$2:$AD$10));""))

Dans la cellule BN2 et tourne en rond depuis une semaine. Ai je une raison d'esperer?

9 réponses

L'ideal serait de la stocker dans la macro et de l'inscrire dans la cellule a la demande, en lancant la macro.
Les references absolues sont incontournables.
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 254
14 févr. 2014 à 23:29
Bonsoir,

il faut utiliser .FormulaLocal et doubler les " à l'intérieur :
[BN2].FormulaLocal = "=SI(ESTNA(SI(BF18=""OUI"";LIEN_HYPERTEXTE(""mailto:""&RECHERCHE(AS18;DONNEESLISTES!$A$2:$A$239;DONNEESLISTES!$L$2:$L$239)&"",""&LIEN_HYPERTEXTE(BG18)&"",""&RECHERCHE(AF18;DONNEESLISTES!$T$2:$T$10;DONNEESLISTES!$AD$2:$AD$10));""""));"""";SI(BF18=""OUI"";LIEN_HYPERTEXTE(CB18)&"",""&LIEN_HYPERTEXTE(BG18)&"",""&LIEN_HYPERTEXTE(RECHERCHE(AF18;DONNEESLISTES!$T$2:$T$10;DONNEESLISTES!$AD$2:$AD$10));""""))"


eric
0
Bonjour,
Tout ton code n'est pas passé et j'ai notamment du mal à gérer le doublement des "" avec la formule "si(xxx;"";yyy.....
0
Il me semblait avoir essaye, je re tente et je te dis
0
Je ne connaissais pas la syntaxe avec les guillemets
0
Je voulais dire entre crochets
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Parfait!!!!!!!
0
Oups, à ceci près; ne fonctionnent pas:

"SI(ESTNA(SI(BF2=""OUI"";LIEN_HYPERTEXTE(""mailto:""&RECHERCHE(AS2;DONNEESLISTES!$A$2:$A$239;DONNEESLISTES!$L$2:$L$239)&"",""&LIEN_HYPERTEXTE(BG2)&"",""&RECHERCHE(AF2;DONNEESLISTES!$T$2:$T$10;DONNEESLISTES!$AD$2:$AD$10));""""));"""";SI(BF2=""OUI"";LIEN_HYPERTEXTE(CB2)&"",""&LIEN_HYPERTEXTE(BG2)&"",""&LIEN_HYPERTEXTE(RECHERCHE(AF2;DONNEESLISTES!$T$2:$T$10;DONNEESLISTE" & _
"$AD$10));""""))"

Pas plus que:

"SI(ESTNA(SI(BF2=""OUI"";LIEN_HYPERTEXTE(""mailto:""&RECHERCHE(AS2;DONNEESLISTES!$A$2:$A$239;DONNEESLISTES!$L$2:$L$239)&"",""&LIEN_HYPERTEXTE(BG2)&"",""&RECHERCHE(AF2;DONNEESLISTES!$T$2:$T$10;DONNEESLISTES!$AD$2:$AD$10));""""));"""";SI(BF2=""OUI"";LIEN_HYPERTEXTE(CB2)&"",""&LIEN_HYPERTEXTE(BG2)&"",""&LIEN_HYPERTEXTE(RECHERCHE(AF2;DONNEESLISTES!$T$2:$T$10;DONNEESLISTE" & _
"$AD$10));""""))"
0
La formule d'origine étant:

=SI(NB.SI(DONNEESPEDAGOGIQUES!$A$2:$A$500;DONNEESADMAINSCRIRE!A4)<>0;SI(ESTNA(SI(A4<>"";DATEDIF(D4;RECHERCHE(A4;DONNEESPEDAGOGIQUES!$A$2:$A$500;DONNEESPEDAGOGIQUES!$E$2:$E$500);"y")&" an(s) "&DATEDIF(D4;RECHERCHE(A4;DONNEESPEDAGOGIQUES!$A$2:$A$500;DONNEESPEDAGOGIQUES!$E$2:$E$500);"ym")&" mois et "&DATEDIF(D4;RECHERCHE(A4;DONNEESPEDAGOGIQUES!$A$2:$A$500;DONNEESPEDAGOGIQUES!$E$2:$E$500);"md")&" jour(s)";""));"";SI(A4<>"";DATEDIF(D4;RECHERCHE(A4;DONNEESPEDAGOGIQUES!$A$2:$A$500;DONNEESPEDAGOGIQUES!$E$2:$E$500);"y")&" an(s) "&DATEDIF(D4;RECHERCHE(A4;DONNEESPEDAGOGIQUES!$A$2:$A$500;DONNEESPEDAGOGIQUES!$E$2:$E$500);"ym")&" mois et "&DATEDIF(D4;RECHERCHE(A4;DONNEESPEDAGOGIQUES!$A$2:$A$500;DONNEESPEDAGOGIQUES!$E$2:$E$500);"md")&" jour(s)";""));"")
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 254
Modifié par eriiic le 17/02/2014 à 16:33
Bonjour,

A essayer si tu veux arrêter de te prendre la tête :
mettre ta formule dans un nom calculé et utiliser ce nom en vba.
Attention à avoir la bonne cellule de sélectionnée lors de la création du nom.

eric

En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
Merci
0
Merci
Je suppose qu'un nom calcule ca ne doit pas etre trop eloigne d'insertion, nom, definir?
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 254
17 févr. 2014 à 17:50
C'est exactement ça.
Tu copies ta formule et tu crées ton nom en y collant ta formule.
Par sécurité dans une cellule colle =ton_nom et contrôles que la recopie incrémentée est correcte.
A noter qu'une formule dans un nom est automatiquement et obligatoirement calculée en matriciel.
Ensuite ta formule en vba est =ton_nom

eric
0