COMMENT rendre une formule dynamique selon une variable

riccardovegas

XLDnaute Junior
Je souhaite savoir s'il est possible d'introduire la valeur d'une cellule dans une formule en onglet FORMATION

Ce lien n'existe plus

En D2 = B1 = semaine en cours

En CY1 = Semaine en cours+1

en CX4 : CX201 -->
=SI('D:\TRACABILITE\[THERMO_plus.xlsb]FORMATION'!$Q4<'D:\TRACABILITE\[THERMO_plus.xlsb]FORMATION'!$K$2;'D:\TRACABILITE\[THERMO_plus.xlsb]FORMATION'!K4;SI('D:\TRACABILITE\[THERMO_plus.xlsb]FORMATION'!$AD4<'D:\TRACABILITE\[THERMO_plus.xlsb]FORMATION'!$K$2;'D:\TRACABILITE\[THERMO_plus.xlsb]FORMATION'!X4;""))

ici THERMO_plus correspond à CY1


Comment rendre ainsi ma formule dynamique de façon à ce que si je change CY1, la formule change aussi?
 

Pièces jointes

  • Capture.jpg
    Capture.jpg
    26.2 KB · Affichages: 68
  • Capture.jpg
    Capture.jpg
    26.2 KB · Affichages: 75
  • Capture.jpg
    Capture.jpg
    26.2 KB · Affichages: 78
  • THERMO_S23forum.zip
    93.5 KB · Affichages: 48

riccardovegas

XLDnaute Junior
Re : COMMENT rendre une formule dynamique selon une variable

bonjour,
cela ne fonctionne pas j'ai un message du type #REF

avec:

=SI('D:\TRACABILITE\[&INDIRECT("CY1")&]FORMATION'!$Q4<'D:\TRACABILITE\[&INDIRECT("CY1")]FORMATION'!$K$2;'D:\TRACABILITE\[&INDIRECT("CY1")]FORMATION'!K4;SI('D:\TRACABILITE\[&INDIRECT("CY1")]FORMATION'!$AD4<'D:\TRACABILITE\[&INDIRECT("CY1")]FORMATION'!$K$2;'D:\TRACABILITE\[&INDIRECT("CY1")]FORMATION'!X4;""))

où CY1=THERMO_S24
le fichier THERMO_S24 est pourtant ouvert
 

riccardovegas

XLDnaute Junior
Re : COMMENT rendre une formule dynamique selon une variable

De plus comment faire pour ne pas avoir à ouvrir le fichier ciblé en CY1 en l'occurence ici THERMO_S24
Surtout que j'ai besoin de cette variable dans plusieurs cellule.

???
 

Pièces jointes

  • THERMO.zip
    174.3 KB · Affichages: 50

Bebere

XLDnaute Barbatruc
Re : COMMENT rendre une formule dynamique selon une variable

Ricardo il faut mettre tout le texte entre quote(partie colorée)
poste #3 plus haut
edit
la formule est elle bonne
pour avoir un résultat que faut il comparer du fichier ouvert(avec les formules) et celui en CY1
 
Dernière édition:

riccardovegas

XLDnaute Junior
Re : COMMENT rendre une formule dynamique selon une variable

Jai noté ceci dans mes fichier

=SI('D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$Q4<'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$K$2;'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!K4;SI('D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$AD4<'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$K$2;'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!X4;""))


mais ca marche pas
 

riccardovegas

XLDnaute Junior
Re : COMMENT rendre une formule dynamique selon une variable

Jai noté ceci dans mes fichier

=SI('D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$Q4<'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$K$2;'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!K4;SI('D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$AD4<'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!$K$2;'D:\TRACABILITE\TEST\[&INDIRECT("CY1")&".xlsb"& ]FORMATION'!X4;""))


mais ca marche pas
 

Modeste

XLDnaute Barbatruc
Re : COMMENT rendre une formule dynamique selon une variable

Bonjour riccardovegas,
Salut Bebere :)

Juste pour mémoire, ta formule pourrait ressembler à
Code:
=SI(INDIRECT("'D:\TRACABILITE\["&$CY$1&".xlsb]FORMATION'!$Q4")<INDIRECT("'D:\TRACABILITE\["&$CY$1&".xlsb]FORMATION'!$K$2");INDIRECT("'D:\TRACABILITE\["&$CY$1&".xlsb]FORMATION'!K4");SI(INDIRECT("'D:\TRACABILITE\["&$CY$1&".xlsb]FORMATION'!$AD4")<INDIRECT("'D:\TRACABILITE\["&$CY$1&".xlsb]FORMATION'!$K$2");INDIRECT("'D:\TRACABILITE\["&$CY$1&".xlsb]FORMATION'!X4");""))

... mais, comme Bebere, je ne comprends pas bien ce que tu veux faire? Pourquoi ne pas faire ce calcul directement dans le fichier concerné et récupérer ensuite le résultat??
 

Bebere

XLDnaute Barbatruc
Re : COMMENT rendre une formule dynamique selon une variable

bonjour Modeste
Ricardo mon avis il devrait y avoir une comparaison avec une cellule du fichier avec la formule
exemple
comparaison de dates q4 avec k2,k4 avec k2
=SI('C:\Users\René\Downloads\THERMO_S23forum\[&INDIRECT("CY1")&".xlsb"&]FORMATION'!$Q4<$K$2;'C:\Users\René\Downloads\THERMO_S23forum\[&INDIRECT("CY1")&".xlsb"&]FORMATION'!K4;SI('C:\Users\René\Downloads\THERMO_S23forum\[THERMO_plus.xlsb]FORMATION'!$AD4<$K$2;'C:\Users\René\Downloads\THERMO_S23forum\[&INDIRECT("CY1")&".xlsb"&]FORMATION'!X4;""))
edit:
la formule de Modeste donne aussi #REF
j'ai supposé que les 2 fichiers étaient construit de la même manière et fait une copie avec le nom en CY1
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : COMMENT rendre une formule dynamique selon une variable

Re,

la formule de Modeste donne aussi #REF
Ah j'te jure que non, Bebere! :) J'obtiens 67 en CX4 du fichier "THERMO_S23".
MAIS il faut impérativement que le 'S24' soit ouvert si la formule est dans le 'S23'

À noter que la référence à Q4, comme K4, AD4 ou X4, etc. dans la formule reste Q4 dans les lignes suivantes, quand on recopie vers le bas. Cette partie peut trouver une solution, mais ça commencera à ressembler à une usine à gaz (si ce n'était déjà le cas).

Ce qui va poser problème c'est que si 'S24' contient le même genre de formules, pointant sur 'S25' et ainsi de suite, il va falloir en définitive ouvrir toute la "cascade" des fichiers ... à mon avis ça va coincer rapidement :rolleyes:

Je crains qu'il ne soit nécessaire de repenser le projet ... et avec les infos disponibles à ce stade (voire même avec plus d'infos!) je suis incapable d'imaginer la moindre piste :eek:
 

Discussions similaires

Réponses
9
Affichages
477
Réponses
4
Affichages
429

Statistiques des forums

Discussions
312 472
Messages
2 088 709
Membres
103 928
dernier inscrit
MIKETUAU