Date: prev next · Thread: first prev next last
2015 Archives by date, by thread · List index


Bonjour Michel


Michel Rudelle wrote
Je copie  des styles de cellule d’un classeur vers un autre grâce à la
procédure suivante :
...
si certains styles sont corrects, d’autres ont perdu leur définition en
route !
...
J’ai cherché mais n’ai 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






--
View this message in context: 
http://nabble.documentfoundation.org/Calc-styles-charges-par-macro-errones-tp4153307p4153658.html
Sent from the Users mailing list archive at Nabble.com.

-- 
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.