En pleine production sous OOo (2.0.4)
je suis amenée à nettoyer un document de tous
les styles en WWnnn généré par MSO.
N'ayant plus à pratiquer les macros ces temps-ci
j'avais mis au frais le génial livre
de bernard marcelly acquis aux reumeuleuleu
de dijon (07/2005) ainsi que la macro
donnée ici par bruno moutouh (merci bruno)
le 10 mai 2006 à 16:47 :
Sub SupprimerStylesWW()

Tout ceci m'a l'air déjà trop ancien, je ne reconnais
pas les commandes de macro et les fenêtres du bouquin
au chapitre "Créer et gérer des macros depuis l'EDI",
et si je crée une nouvelle macro en recopiant celle de bruno,
lancée bêtement par le bouton > de la barre d'outils,
j'ai un erreur de syntaxe à la ligne
exit sub
de la première commande.

je mets la macro ci-dessous ; remarquez que dans mon EDI
les lignes longues ne sont pas repliées comme ici ; c'est thunderbird qui les a repliées après coup.

Pouvez vous me mettre sur la vie ?
merci !

hp

-------- Message original --------
Sujet: Re: [dev-fr] accumulation de styles
Date: Wed, 10 May 2006 16:47:54 +0200
De: Bruno Moutouh <[EMAIL PROTECTED]>
Répondre à: [email protected]
Pour: [email protected]
Références: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>

Bonjour, voici une macro que j'utilise:

********************

Sub SupprimerStylesWW()

Dim monDocument As Object
Dim lesFamilles As Object, uneFamille As Object
Dim styleX As Object, liste As String, nomFam As String
Dim f As integer, x As integer, nbSupp as integer
dim aSupp() as string, nbStyles as integer
const BOUTON_OUINON = 4
const BOUTONDEFAUT_NON = 256
const ICONE_QUESTION = 32
const CHOIX_NON = 7

if msgbox("Supprimer tous les styles commençant par WW ?",BOUTON_OUINON+BOUTONDEFAUT_NON+ICONE_QUESTION)= CHOIX_NON then
        exit sub
endif

monDocument = ThisComponent

lesFamilles = monDocument.StyleFamilies
for f = 0 to lesFamilles.Count -1 ' chaque famille
        nomFam = lesFamilles.ElementNames(f)
        if (nomFam="ParagraphStyles" or nomFam="CharacterStyles" or
nomFam="NumberingStyles") then
                uneFamille = lesFamilles.getByName(nomFam)
                nbStyles = uneFamille.count
                for x = 0 to nbStyles -1 ' chaque style de cette famille
                        styleX = uneFamille(x)
                        if left(styleX.Name,2)="WW" then
                                nbSupp=nbSupp+1
                                redim preserve aSupp(nbSupp+1)
                                aSupp(nbSupp) = styleX.Name
                        endif
                next x
        endif
        ' suppression des styles WW de cette famille
        for x=1 to nbSupp
                uneFamille.removeByName(aSupp(x))
        next x

        msgbox str(nbSupp)+" styles supprimés dans la famille "+ nomFam
        nbSupp = 0
        redim aSupp(0)
        
next f

End Sub

********************




Marie jo KOPP CASTINEL a écrit :
> Bonjour
>
> FaVdB a écrit :
>> OK, je vais regarder tout ça. Malheureusement par un clique trop
>> rapide je crois que tu as envoyé les fichiers sur la liste. En tout
>> cas moi je les ai.
>
>
> Je pensais que cela ne passerait pas sur la liste... Mais Sophie nem'a
> pas encore tuée ;-) Elle attend que je fasse les prochains tests :-)
>
> A la demande de Laurent, ces documents sont bien sûrs en  LGPL, PDL et
> tout ce qui s'en suit.
> Je remplis le document de license le précisant.
>
> Marie jo
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à