Bonjour Pierre-Yves,
-----Message d'origine-----
De : pierre-yves samyn [mailto:pierre-yves.samyn@laposte.net]
Envoyé : dimanche 5 juillet 2015 12:54
À : users@fr.libreoffice.org
Objet : [fr-users] Re: Calc - styles chargés par macro erronés
Bonjour Michel
Michel Rudelle wrote
Je copie des styles de cellule dun classeur vers un autre grâce à la
procédure suivante :
...
si certains styles sont corrects, dautres ont perdu leur définition en
route !
...
Jai cherché mais nai pas trouvé de bug correspondant.
Ben... c'est parce que ce n'est pas un bug me semble-t-il.
Tu récupères les styles mais les styles utilisent des formats qui en
l'occurrence sont personnalisés, donc, propres au classeur source.
La solution est de récupérer aussi ces formats.
Ci-dessous un code à tester (il y a peut-être plus performant mais
là tout de suite j'ai fait avec ce que je savais sans rechercher plus
avant
dans l'Api).
Explications :
J'utilise loadStylesFromDocument puisque tu récupères les styles de
thiscomponent. Pas besoin de passer par un chargement "url".
Quand les styles sont chargés...
Pour chaque style de cellule de la source (thiscomponent)...
À partir de la clé on récupère son format...
Si c'est un format "utilisateur"...
On recherche ce format dans la cible (formats de syntheseSF)...
Si on ne trouve pas ce format on l'ajoute ce qui donne une nouvelle clé...
Que l'on attribue au style de même nom dans la cible (syntheseSF)
PS: je fais l'hypothèse que la locale était la même entre les classeurs...
J'espère que c'est (relativement) clair... :)
Cordialement
Pierre-Yves
Ce qui est clair c'est que j'ai confondu style et format. J'avais bien
suspecté que le problème venait des formats personnalisés.
Je vois le principe, je vais me pencher là-dessus et revenir ici je pense
dans qq jours.
Merci beaucoup,
Michel
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être
supprimés
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.