i |
Lien vers des données externes |
Suite aux différents échanges récents sur ce sujet, j'ai fait quelques
tests pour essayer de comprendre. Il me semble qu'on peut insérer un
lien vers des données externes de deux façons différentes :
méthode 1 : utiliser le dialogue Insertion > Lien vers des données
externes... Dans ce cas on ne peut accéder qu'aux plages nommées des
fichiers tableurs
>>> On récupère aussi de cette façon le FORMATAGE des cellules source(s?) ce qui
n'est pas toujours souhaité.
méthode 2 : insérer une formule de la forme
"='file:///home/user/source.ods'#$Feuille1.A1:B2" ou
=DDE("soffice";"/home/user/source.ods";"Feuille1.A1:B2"). Si on utilise
une formule matricielle (validation de la formule par ctrl+maj+entrée)
on peut ainsi récupérer une plage de données quelconque.
>>> la formule de type :
=DDE("soffice";"/home/user/source.ods";"Feuille1.A1:B2")
ressemble à s'y méprendre à celle retournée par le "collage spécial/lier"
Dans les deux cas OOo voit un lien et celui-ci apparait dans le dialogue
Édition > Liens... et les deux peuvent être rompus mais avec des
résultats différents :
- avec la méthode 1 on a l'effet naturellement attendu : les données
sont dans le fichier mais sans le lien vers la source des données. Si on
enregistre le fichier après avoir rompu le lien et si on le recharge,
aucune mise à jour de lien n'est proposée.
>>> Oui
- avec la méthode 2 on peut rompre le lien mais la formule reste
inchangée et tout se passe comme si le lien était automatiquement
recréé. Si on enregistre le fichier et qu'on le recharge, une
proposition de mise à jour des liens apparait. On s'attendrait dans ce
cas à ce que, lors de la rupture du lien, la formule soit remplacée par
la ou les valeurs correspondantes comme on peut le faire avec le collage
spécial en désactivant le collage des formules. Mais ce n'est pas le cas
et je ne sais pas si c'est un bug ou si c'est fait exprès pour une
raison qui m'échappe.
>>> éventuellement, mais aussi s'attendre à ce que la formule RESTE (afin de
conserver une trace) dans le but de pouvoir réactiver le lien en cas de
besoin, en supposant qu'il ne soit utile que sous certaine conditions et
qu'il y ait plusieurs dizaines de liens à gérer.
Apparemment il n'y a rien dans l'aide sur la rupture des liens vers les
donnés externes. Le bouton Aide du dialogue renvoie vers la page
d'entrée de l'aide de Calc.
Mes questions sont les suivantes :
- quelle méthode recommandez-vous ? Pour moi ce serait la méthode 1 mais
elle a l'inconvénient qu'on ne voit pas que le contenu d'une cellule
provient d'un fichier lié. Le seul moyen que j'ai trouvé pour obtenir
cette info est de passer par le navigateur et de double-cliquer sur une
plage liée pour savoir où elle se trouve.
>>> Moi aussi mais le fait que cette méthode récupère le formatage ne plaît (ou ne
satisfait) pas.
>>> si il ne s'agissait que d'un seul lien cette méthode serait efficace ; il
suffirait de choisir entre oui ou non.
Ce serait plus utile qu'il soit possible d'activer ou désactiver un lien en
fonction d'un besoin le concernant.
en regardant encore plus loin, l'idéal serait d'ajouter une option à la
rupture ; est-ce que le lien doit-être rompu définitivement-> alors rupture
définitive, sinon est-ce que ce lien est susceptible d'être réactivé->alors
le bout de code qui va bien.
- est-ce que le comportement de la méthode 2 lors de la rupture du lien,
vous parait conforme à ce que vous attendez ou a une utilité ?