1 message in org.openoffice.fr.prog[prog] Rechercher remplacer dans ente...
FromSent OnAttachments
Cezame ConceptApr 25, 2006 2:07 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:[prog] Rechercher remplacer dans entete avec tableauActions...
From:Cezame Concept (ceza@wanadoo.fr)
Date:Apr 25, 2006 2:07:02 am
List:org.openoffice.fr.prog

Bonjour ;

Je rencontre un problème assez bizarre.

Je travaille sur un module permettant de gérer des modèles de courriers sous oOWriter

J’utilise des champs prédéfinis rechercher / remplacer presse papier.

Je rencontre le problème suivant :

Si je place le champ prédéfini dans l’entête simplement cela fonctionne. Par contre si ce champ est positionné dans un tableau situé dans l’entête cela ne fonctionne plus !

Pour effectuer le rechercher remplacer j’utilise la fonction suivante :

Function RechercherRemplacerToutPressePapier(ByVal sMots As String, ByVal sRespecterCasse As Boolean, ByVal sMotEntier As Boolean) As Long

Dim oResultat As Object Dim oDispatcherLocal As Object Dim oIndex As Integer Dim oControleur As Object

Dim Arguments(0) As Object oSel = oDocument.CurrentController.Frame Arguments(0) = MakePropertyValue("Hidden", False)

sMots = ConvertToAllowsString(sMots)

oDispatcherLocal = CreateUnoService("com.sun.star.frame.DispatchHelper") oMonTexte = oDocument.getText() oControleur = oDocument.CurrentController

oJeCherche = oDocument.createSearchDescriptor

'Definir la balise à rechercher dans le document OpenOffice Word oJeCherche.SearchString = sMots

'Distinguer les majuscules des minuscules dans la recherche oJeCherche.SearchCaseSensitive = sRespecterCasse

'Ne rechercher que des mots oJeCherche.SearchWords = sMotEntier

'Rechercher à reculons oJeCherche.SearchBackwards = False

'Faire une recherche avec la méthode des expressions régulières oJeCherche.SearchRegularExpression = True

'Rechercher des paragraphes d’un style donné par SearchString oJeCherche.SearchStyles = False

'Rechercher un texte similaire au texte cherché oJeCherche.SearchSimilarity = False

oResultat = oDocument.findAll(oJeCherche)

For oIndex = 1 To oResultat.getCount() ' sélectionner la chaine de recherche oMonCurseur = oMonTexte.createTextCursorByRange(oResultat.getByIndex(oIndex - 1))

' Remplacement par un texte ' oMonCurseur.setString("Chaine de remplacement")

'Remplacement par le contenu du presse papier oControleur.select(oMonCurseur) oDispatcherLocal.executeDispatch(oSel, ".uno:Paste", "", 0, Arguments) Next

RechercherRemplacerToutPressePapier = oResultat.getCount()

End Function

Merci pour votre aide