De : Cezame Concept [mailto:[EMAIL PROTECTED]

Merci pour du texte cela fonctionne parfaitement ... en fait seul le RC pose problème ? 

La tabulation est aussi concernée (mettre \t dans la chaine à remplacer).

 

Pour info, sur l'utilisation des caractères génériques (lié à la propriété RegularExpression),

lire dans l'aide en ligne d'OOo :

Liste des caractères génériques (permet de faire des recherches complexes

avec des "wildchar" tels que *, . , [abc123], [a-e], paragraphes vides (^$), ...)

 

Pour trouver cette liste, effetuer une recherche sur un titre ayant ce nom là :

"Liste des caractères génériques"

(on y accède aussi par le menu d'explication sur rechercher/remplacer)

Merci

 


De : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Envoyé : mercredi 8 mars 2006 10:44
À : prog@fr.openoffice.org
Objet : RE: [prog] Urgentissime !!! OLE et rechercher Remplacer

 

Bonjour,

 

D'après la doc du SDK et quelques tests, je pense que la solution consiste

à mettre la propriété SearchRegularExpression à True (et non à False) :

 

oJeCherche.SearchRegularExpression = true (dans votre exemple).

 

Avec cette propriété, vous pouvez alors utiliser \n pour signaler un retour

chariot dans votre chaîne :

Pour votre exemple :

toto+<RC>+tata

sera à écrire de la façon suivante :

toto\ntata

 

J'ai effectué des tests en utilisant le panneau Rechercher/Remplacer sous OO

et ça marche bien (je n'ai pas testé en Basic, mais ça devrait marcher aussi).

 

 

-----Message d'origine-----
De : Cezame Concept [mailto:[EMAIL PROTECTED]
Envoyé : mardi 7 mars 2006 16:43
À : prog@fr.openoffice.org
Objet : [prog] Urgentissime !!! OLE et rechercher Remplacer

Comment peut-on réaliser un rechercher / remplacer d'une chaîne de caractère par une chaîne multi ligne ou par exemple le contenu du presse papier ?

 

Par ex : remplacer toto par toto+<RC>+tata ... ou bien remplacer la chaine « Logo » par une image dans le presse papier !

 

J'utilise la fonction suivant qui fonctionne pour une texte mono ligne ...

 

Function RechercherRemplacer(ByVal sMots As String, ByVal sMotBis As String, ByVal sRespecterCasse As Boolean) As Long

 

        Dim NombreDeFois As Long

 

        'oDocument = ThisComponent

        'Créer un objet JeCherche qui contiendra tous les paramètres nécessaires à ce remplacement

        oJeCherche = oDocument.createReplaceDescriptor

 

        'Definir la balise à rechercher dans le document OpenOffice Word

        oJeCherche.SearchString = sMots

 

        'Definir la valeur de remplacement

        oJeCherche.ReplaceString = sMotBis

 

        'Distinguer les majuscules des minuscules dans la recherche

        oJeCherche.SearchCaseSensitive = True

 

        'Ne rechercher que des mots

        oJeCherche.SearchWords = False

 

        'Rechercher à reculons

        oJeCherche.SearchBackwards = False

 

        'Faire une recherche avec la méthode des expressions régulières

        oJeCherche.SearchRegularExpression = False

 

        'Rechercher des paragraphes d'un style donné par SearchString

        oJeCherche.SearchStyles = False

 

        'Rechercher un texte similaire au texte cherché

        oJeCherche.SearchSimilarity = False

 

        'Remplacer toutes les balises

        NombreDeFois = oDocument.replaceAll(oJeCherche)

 

        RechercherRemplacer = NombreDeFois

 

    End Function

 

 

J'ai essayé en utilisant une commande UNO mais ça ne fonctionne  pas ..

 

Merci d'avance !

 

 

---------------------------------------------------------------------------------------
Wanadoo vous informe que cet e-mail a ete controle par l'anti-virus mail.
Aucun virus connu a ce jour par nos services n'a ete detecte.

 

Répondre à