Copier un style de page entre classeurs

Bonjour,

Depuis la version 4, la possibilité de copier un style d’un document à un
autre a disparu (un retour est prévu …).

Un contournement plutôt facile consiste à copier une partie de texte
(Writer) ou une cellule (Calc) formatés avec le style concerné d’un document
à l’autre.

Mais pour les styles de page, je n’ai rien trouvé, la copie d’une feuille de
Calc n’emmène pas le style de page avec :frowning:

Mon contournement consiste donc à faire l’opération avec la version 3.6

Avez-vous une solution sans jongler avec les versions ?

Merci,

Michel

Bonjour Michel,

et en créant un modèle de ta page, il ne serait pas possible de l'importer dans ton fichier (idée jetée comme ça, sans test) ?

(-: Élodie :slight_smile:
mieux motarde que jamais................
----- Mail original -----

Bonjour Michel

Michel Rudelle wrote

Depuis la version 4, la possibilité de copier un style d’un document à un
autre a disparu (un retour est prévu …).
...
Mais pour les styles de page, je n’ai rien trouvé, la copie d’une feuille
de
Calc n’emmène pas le style de page avec :frowning:
...
Avez-vous une solution sans jongler avec les versions ?

Solution provisoire, si cela ne te gêne pas d'utiliser une macro:

1. Coller la macro ci-dessous dans la bibliothèque
"Mes macros et boîtes de dialogue > Standard"
2. Ouvrir le classeur "cible" (celui dans lequel on veut récupérer
les styles de page).
3. Exécuter la macro ChargerStylePage (elle demande de
sélectionner le document contenant les styles de page
à récupérer).

La fonctionnalité assurée est ici minimum:
- on ne traite que les styles de page
- on charge les styles de page en remplaçant les styles
existants (attention donc...).
-on ne choisit pas parmi les styles de page celui ou ceux
qu'on veut charger (ils le sont tous).
-on ne fait aucun contrôle (le document choisi est-il un
classeur par exemple ?).
- etc.

Nota: je n'ai pas le temps (ni l'envie) de packager plus car
cette fonctionnalité est (selon toute vraisemblance) en cours
d'analyse et de refonte par les dev.

C'est juste une "rustine" vite fait pour dépanner donc :slight_smile:

option explicit

sub ChargerStylePage

dim oDoc as object, oFp as object
dim sChoix as variant
dim sUrl as string

Dim aArgs(1) As New com.sun.star.beans.PropertyValue
aArgs(0).Name = "OverwriteStyles"
aArgs(0).Value = True
aArgs(1).Name = "LoadPageStyles"
aArgs(1).Value = true

oDoc = thiscomponent

oFp = createUnoService( "com.sun.star.ui.dialogs.FilePicker" )
oFp.initialize(
array(com.sun.star.ui.dialogs.TemplateDescription.FILEOPEN_SIMPLE) )
oFp.setMultiSelectionMode(false)

if oFp.Execute() = com.sun.star.ui.dialogs.ExecutableDialogResults.OK then
    sChoix = oFp.GetFiles
    sUrl= sChoix(0)
  oDoc.stylefamilies.loadStylesFromURL(sURL, aArgs() )
  msgbox "Terminé"
End if

end sub

Cordialement
Pierre-Yves

Merci Pierre-Yves,

Désolé de t'avoir fait travailler, je me demandais surtout s'il y avait une
solution simple que je n'aurais pas vue.
Jongler avec les versions ne me dérange pas trop (j'en ai 5 ou 6 en
parallèle qui me servent pour le QA et pour vérifier mes docs sur la même
version que mes clients) ... sauf que je me mélange parfois les crayons :frowning:
et je continue de travailler avec la version qui ne me va pas (pour moi,
c'est le pb de la 3.6 avec le risque de perdre mes FC).

Mais je pense que ta macro va bien me servir pour un autre problème qui me
trotte dans la tête.

Encore merci,

Michel