J’ m’empresse de faire un test … ceci est donc pour une texte !

 

Comment est t’il possible de remplacer une chaîne par le contenu du presse papier (chaîne de caractères ou image ou document autre…) ?

 

Merci d’avance pour votre aide

 


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 à