XL 2016 Automatiser des liaisons avec un autre fichier

  • Initiateur de la discussion Initiateur de la discussion Msouami33
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Msouami33

XLDnaute Nouveau
Bonjour,

Dans mon fichier il a y a des calcul qui sont associé au mois l'on est, par exemple en A2=3 pour mars, mais aussi a des cellules dans d 'autres fichiers, serait il possible d automatiser par rapport à la cellule A2.

Exemple:
Controle De Gestion Financiere\Reporting\2022\2022-02\Consolidation\[2022.02 Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$10, est ce que c'est possbible dans ce genre de lien de remplacer le 02 ci dessus par la cellule A2? 2 est donc le mios de fevrier

Merci d'avance 🙂
 
Bonjour Msouami,
Peut être en utilisant la fonction "indirect", elle est faite pour ça :
Ca pourrait donner quelque chose comme ça :
VB:
=INDIRECT("'Controle De Gestion Financiere\Reporting\2022\2022-"&A2&"\Consolidation\[2022."&A2&" Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$10")
Mais, évidemment impossible à tester. A vous de tatonner.🙂
 
Bonjour Msouami,
Peut être en utilisant la fonction "indirect", elle est faite pour ça :
Ca pourrait donner quelque chose comme ça :
VB:
=INDIRECT("'Controle De Gestion Financiere\Reporting\2022\2022-"&A2&"\Consolidation\[2022."&A2&" Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$10")
Mais, évidemment impossible à tester. A vous de tatonner.🙂
Bonjour Sylvanu,

merci pour l'info je vais tatonner, du coup la cellule A2 ou j'ai mon chiffre représentant le mois, je dois la mettre en TEXTE pour que cela marche?
 
Dans ce cas remplacez A2 par DROITE("00"&A2;2) comme ça vous serez tranquille.
Bonjour sylvanu,

Bien joue pour la formule droite elle marche au top, par contre pour le reste malgres quelques transformation ca me renvoie toujours #REF!, je pense que c'est parce que c'est dans un autre dossier. la formule exacte est :

='S:\Controle De Gestion Financiere\Reporting\2022\2022-02\Consolidation\[2022.02 Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$22*-'S:\Controle De Gestion Financiere\Reporting\2022\Diffusion Reporting\Reporting It et Benelux et EAU\Italy\[Italy activity 022022 with Spain&Portugal.xlsx]Italy'!$F$9/1000/'S:\Controle De Gestion Financiere\Reporting\2022\2022-02\Consolidation\[2022.02 Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$10*1000

vu que je dois aller chercher dans mon S ca doit pas marcher, si tu as une idée? peut etre tu voudrais que je t'envoie un fichier?
 
Bonjour,
Je pense plutôt que dans votre formule il doit y avoir 3 indirect. Les signes de multiplication et de division doivent être hors indirect.
Indirect ne sert qu'à reconstituer une adresse.
Avez vous bien ces 3 indirect présent ?
 
Bonjour,
Je pense plutôt que dans votre formule il doit y avoir 3 indirect. Les signes de multiplication et de division doivent être hors indirect.
Indirect ne sert qu'à reconstituer une adresse.
Avez vous bien ces 3 indirect présent ?
Bonjour Sylvanu,

Effectivement cela marche, mais en faite je viens de voir qu'avec la fonction indirect il faut que tout les fichiers soient ouverts sinon ca ne marche pas, du coup c'est bien mais ca m'arrange pas tant que ca lol
 
Bonsoir,
Si les fichiers sont fermés, alors je ne vois que le VBA pour résoudre votre souci.
Quelque chose du genre :
VB:
[C11] = "='Controle De Gestion Financiere\Reporting\2022\2022-" & [A2] & "\Consolidation\[2022." & [A2] & " Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$10"
 
Bonjour,
En PJ un essai avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [A1]) Is Nothing Then
        [F16] = "='S:\Controle De Gestion Financiere\Reporting\2022\2022-" & [A2] & _
            "\Consolidation\[2022." & [A2] & _
            "  Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$22*-'S:\Controle De Gestion Financiere\Reporting\2022\Diffusion Reporting\Reporting It et Benelux et EAU\Italy\[Italy activity " & _
            [A2] & "2022 with Spain&Portugal.xlsx]Italy'!$F$9/'S:\Controle De Gestion Financiere\Reporting\2022\2022-" & [A2] & "\Consolidation\[2022." & [A2] & "  Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$10"
    End If
End Sub
La macro se lance automatiquement lorsque la valeur en A1 change. Elle utilise A2 comme variable.
Mais évidemment impossible à tester.
Il suffit de changer le mois, la formule change, on peut alors vérifier la formule en F16 ( je n'ai modifié que celle ci ) pour corriger.
J'ai supposé qu'il fallait modifier les 2022-01 et les 2022.01.
 

Pièces jointes

Bonjour,
En PJ un essai avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [A1]) Is Nothing Then
        [F16] = "='S:\Controle De Gestion Financiere\Reporting\2022\2022-" & [A2] & _
            "\Consolidation\[2022." & [A2] & _
            "  Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$22*-'S:\Controle De Gestion Financiere\Reporting\2022\Diffusion Reporting\Reporting It et Benelux et EAU\Italy\[Italy activity " & _
            [A2] & "2022 with Spain&Portugal.xlsx]Italy'!$F$9/'S:\Controle De Gestion Financiere\Reporting\2022\2022-" & [A2] & "\Consolidation\[2022." & [A2] & "  Division Profit & Loss Statement EMEA.xlsx]SASU'!$H$10"
    End If
End Sub
La macro se lance automatiquement lorsque la valeur en A1 change. Elle utilise A2 comme variable.
Mais évidemment impossible à tester.
Il suffit de changer le mois, la formule change, on peut alors vérifier la formule en F16 ( je n'ai modifié que celle ci ) pour corriger.
J'ai supposé qu'il fallait modifier les 2022-01 et les 2022.01.
A wé tu es vraiment trop fort, merci beaucoup !!! 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour