Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Liaison non reconnues


Sujet :

Excel

  1. #1
    Membre habitué
    Liaison non reconnues
    Bonjour,

    Je me casse les dents sur une problématique depuis plusieurs jours, problématique que j'ai rencontré sur plusieurs fichiers excel depuis qu'on est passé sur Office 365.... Les anciens fichiers excel créé en excel 2010 fonctionnent toujours en excel 365 mais pas les nouveaux.

    Ma problématique :
    - J'ai un fichier excel qui fait référence à des données d'un autre fichier excel. Pour le constitué, j'ai ouvert les deux fichiers, écrit mes formules, enregistré.
    exemple de formule :
    INDEX('T:\DSI-RC\SIDB\Décisionnel\Fabrication\OGDD\Suivi OGDD SID.xlsx'!Liste_OGDD[[#Tout];[Commentaire Point OGDD]];EQUIV([@Jira];'T:\DSI-RC\SIDB\Décisionnel\Fabrication\OGDD\Suivi OGDD SID.xlsx'!Liste_OGDD[[#En-têtes];[#Données];[JIRA]];0))
    (en gras le chemin du ficher cible)
    - Une fois l'opération faite je ferme mes deux fichiers
    - J'ouvre alors le fichier principal, là j'ai le message classique me demandant si je veux mettre à jour les liaisons => donc il a bien fait le lien entre mes deux fichiers
    - Par contre là si je dis "Mettre à jour", j'ai un 2ème message me disant "pour l'instant on n'arrive pas à mettre à jour les liaisons..."



    - J'accepte alors de modifier les liaisons, j'arrive sur une fenêtre avec ma liaison en erreur :



    - Je choisis de mettre à jour les valeurs, il me propose de choisir depuis quel onglet,



    - Je remarque quelque chose de bizarre, il me parle de feuille de calcul introuvable dans le classeur (tout en haut), je ne sais pas pourquoi il me parle de cette feuille de calcul "Suivi OGDD SID"...
    - Je choisis donc l'onglet contenant mon tableau "Liste_OGDD" : "Liste OGDD"
    - Là il me dit "OK" au niveau de ma liaison mais par contre il ne me ramène plus rien dans mon fichier principal !

    J'ai tenté/remarqué plusieurs choses :
    - si le fichier source est ouvert tout se passe bien
    - si je rajoute le nome de l'onglet contenant mon tableau au niveau de ma formule : 'T:\DSI-RC\SIDB\Décisionnel\Fabrication\OGDD\[Suivi OGDD SID.xlsx]Liste OGDD' à la place de 'T:\DSI-RC\SIDB\Décisionnel\Fabrication\OGDD\Suivi OGDD SID.xlsx', ça marche avec le fichier source ouvert mais quand j'enregistre excel revient à la première formulation (il n'enregistre pas la référence de l'onglet !)
    - j'ai le souci sur un autre fichier qui va aussi chercher des données dans un autre fichier source

    Je dois avoir un problème au niveau de la gestion des liaisons mais où ?
    Est-ce du à l'utilisation de tableaux dans le fichier source et excel s'y perd ?
    Je suis preneur de toute piste ou explication

    Merci à vous

  2. #2
    Membre habitué
    J'ai continué à chercher et j'ai une piste sérieuse (même si ça ne m'explique pas pourquoi ça marche pas....)

    - Si je rajoute le nom de l'onglet (comme je l'ai fait ci-dessus) suivi du nom du tableau du fichier source, au moment où je fais "entrer" sur ma formule, excel retire tout seul le nom de l'onglet, c'est pour ça que j'ai le même comportement que sans le nom de l'onglet car en fait... il l'enlève tout seul sans rien dire...

    - Si j'enlève le tableau, en utilisant des références fixes de cellules ($R$4:$R$1500 et $T$4:$T$1500) à place des deux zones de tableau (Liste_OGDD[[#Tout];[Commentaire Point OGDD]]) et (Liste_OGDD[[#En-têtes];[#Données]), en ajoutant bien sûr le nom de l'onglet contenant ces références (Liste OGDD) là ça marche !! C'est à dire si j'enregistre mon fichier principale, que je le ferme, le réouvre (sans que le fichier source) soit ouvert, j'ai l'invite pour mettre à jour les liaisons, si je dit "Mettre à jour les liaisons" tout se passe bien ! Je n'ai pas le message d'erreur

    La conclusion est donc que ça ne marche pas avec des références de tableau !! C'est quand même très nul quand on connaît tout le coté pratique des tableaux !

    Du coup, même si j'ai trouvé une solution de contournement, j'aimerai quand même bien pouvoir faire fonctionner ces liaisons externes avec des tableaux excel ! bug d'excel ou subtilité que je n'ai pas vue ?

  3. #3
    Membre éprouvé
    Bonjour,

    Autant que je sache, les liens vers des noms de tableau depuis un autre classeur posent problème

    Ouvre un fichier contenant un tableau à lier
    Sélectionne la plage du tableau entier
    Crée un nom de plage de cellules:
    Onglet Formules - Gestionnaire de noms
    Bouton Nouveau
    Tapes un Nom
    Dans Fait référence à, vérifie que la plage n'est pas liée au nom du tableau, mais aux cellules, corrige si besoin
    Valides ton nom
    Enregistre
    Essayes de refaire ton lien sur ce nom

    Edit : A noter que ce nom s'agrandira avec ton tableau tout de même

  4. #4
    Responsable
    Office & Excel

    Salut.

    il faut bannir les formules interfichiers. Cela ne peut que t'apporter des soucis. Surtout que tu travailles avec des tableaux structurés et que tu es ne Office 365.

    Dès lors, la solution qui s'impose est de lier ton tableau structuré source à ton classeur de travail avec Power Query (c'est à peine quelques clics), et de travailler tes formules en local. La mise à jour des données peut être réalisée automatiquement à l'ouverture, voire toutes les x minutes.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Une fois pour toutes, je donne mon avis. Je ne vais pas le répéter à chaque message...
    Si je propose une solution générique sur votre solution spécifique, c'est parce que, fainéant de nature, je privilégie le réutilisable...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #5
    Membre habitué
    Je vous remercie pour vos réponses, j'ai bien l'impression de flirter avec les limites de l'excel "classique"; Je vais me pencher sérieusement sur Power Query car c'est la deuxième fois qu'on le répond (pour deux problèmes différents) que je devrais l'utiliser avec cependant quelques questions (je trouverai sans doute la réponse en cherchant sur le net) :
    - est-ce que power-Query est lié au fichier excel ou bien au poste de travail car comme ce sont des fichiers paratagés je ne peux pas demander aux autres utilisateurs d'installer power query (pour plein de raisons)
    - est-ce qu'il faut des droits d'admin sur le poste pour l'installer (car je ne les ai pas)

    Toto, je vais, en attendant de me mettre à Power Query, tenter ta solution qui est un peu plus propre que mes références fixes, je ne pensais pas que les zones nommées s'agrandissaient toutes seules... enfin si quand on ajoute des lignes au milieu mais même quand on ajoute des lignes à la fin ? (ce qui est une des grandes forces des tableaux structurés) (je vais faire un test )

  6. #6
    Responsable
    Office & Excel

    Power Query est nativement installé dans les Office 365. Du moment que le chemin d'accès au classeur source soit identique sur tous les postes, il n'y a aucun souci à "partager" un classeur Excel contenant une solution Power Query.

    Lorsqu'il s'agit simplement d'importer les données d'un autre classeur, sans qu'il y ait besoin d'un traitement particulier via Power Query, c'est quelques clics au départ de de l'onglet Données. Lorsque les tableaux structurés ont été sélectionnés dans le classeur source, cliquer sur Charger va importer les tableaux structurés dans des nouvelles feuilles du classeur de travail avec liaisons. C'est en fait très simple à mettre en place, dans le cas d'un import lié sans transformations de données.

    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Une fois pour toutes, je donne mon avis. Je ne vais pas le répéter à chaque message...
    Si je propose une solution générique sur votre solution spécifique, c'est parce que, fainéant de nature, je privilégie le réutilisable...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  7. #7
    Membre habitué
    Bonjour,

    Merci Pierre, j'ai enfin trouvé un peu de temps pour tester ta solution qu power query, ça marche, j'ai bien pu importer les données puis les utiliser.
    Par contre elles ne se mettent pas à jour en automatique à l'ouverture du fichier, je dois aller sur l'onglet "données", puis actualiser les liaisons (je n'ai pas d'invite à l'ouverture me demandant de mettre à jour les liaison ou non", ai-je raté quelque chose ou bien est-ce qu'avec Power Query il faut le faire manuellement ?
    Au pire je peux faire une macro qui se lance à l'ouverture mais ce serait un peu bête et il dois bien y avoir un truc en natif ? (que je n'ai pas encore trouvé)

  8. #8
    Responsable
    Office & Excel

    Salut.

    Tu peux déterminer la mise à jour à l'ouverture. Active une cellule du tableau résultant de la requête, puis va dans les propriétés de la connexion pour activer la mise à jour à l'ouverture.

    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Une fois pour toutes, je donne mon avis. Je ne vais pas le répéter à chaque message...
    Si je propose une solution générique sur votre solution spécifique, c'est parce que, fainéant de nature, je privilégie le réutilisable...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  9. #9
    Membre habitué
    Merci Pierre, je n'ai pas tout à fait les mêmes menus que sur tes captures d'écran comme je suis en Office 365 mais j'ai retrouvé les bons menus et ça fonctionne.

    Un grand merci, je mets le post en résolu.

###raw>template_hook.ano_emploi###