Writer – Passer en exposant toutes les abréviations d'énumération

Auteur : Laurent Godard – Conseil et Développement – dev.godard@wanadoo.fr

Révision : 1

Parcours tous le document à la recherche d'une liste de chaîne de caractère. Si la chaîne est précédée d'un nombre, la macro la passe en exposant dans le document.

Permet de corriger, a posteriori, les erreurs du type 1er, 2nd, 2ème ...

Note : Faire un copier/coller de l’ensemble.

'********************************************************************************

'Copyright (C) 2003 Laurent Godard

'dev.godard@wanadoo.fr

'This library is free software; you can redistribute it and/or

'modify it under the terms of the GNU Lesser General Public

'License as published by the Free Software Foundation; either

'version 2.1 of the License, or (at your option) any later version.

'This library is distributed in the hope that it will be useful,

'but WITHOUT ANY WARRANTY; without even the implied warranty of

'MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU

'Lesser General Public License for more details.

'http://www.opensource.org/licenses/lgpl-license.php

'You should have received a copy of the GNU Lesser General Public

'License along with this library; if not, write to the Free Software

'Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

'******************************************************************************

Sub PasseEnExposant()

Dim oSearch As Object

'Liste des exposants à traiter – peut etre completée

Dim ListeExposants(1 to 5)

ListeExposants(1)="er"

ListeExposants(2)="ère"

ListeExposants(3)="nd"

ListeExposants(4)="ere" 'faute d'orthograffffe

ListeExposants(5)="nde"

ThisComponent.lockControllers

'Boucle sur les differents cas

For IndxExpo=1 to ubound(ListeExposants())

oSearch = ThisComponent.createSearchDescriptor

oSearch.SearchString ="[0123456789]"+ListeExposants(IndxExpo)

oSearch.searchCaseSensitive=true

oSearch.SearchRegularExpression=true

oSearch.SearchWords=true

trouve=ThisComponent.findFirst(oSearch)

While Not IsNull(trouve)

'selectionne caracteres apres le premier du curseur (car celui ci est un chiffre)

trouve.gotoend(false)

trouve.goleft(len(ListeExposants(IndxExpo)),true)

'taille %

trouve.CharEscapementHeight = 58

'position verticale %

trouve.CharEscapement=33

'suivant

trouve = ThisComponent.findNext(trouve.End, oSearch)

Wend

next IndxExpo

ThisComponent.UnlockControllers

end sub

Sophie Gautier

2003-05-04T09:01:58