Dans n'importe quel document Writer, teste le code suivant : Sub Main Dim oDoc as object, oText As Object, oWord As Object, oTrouve As Object
oDoc = ThisComponent oWord = oDoc.createSearchDescriptor oWord.SearchString = "Waouah" 'String très improbable oTrouve = oDoc.FindFirst(oWord) If IsNull(oTrouve) then msgbox "Objet Null" If oTrouve = Null then msgbox "Objet Null" End Sub La fonction IsNull fait afficher "Objet Null" alors que l'égalité directe ne donne rien. Il n'y a pas équivalence. Jean-Marc Marceau GUIHARD a écrit : > Une simple suggestion : > Peut-être pourrais-tu t'en tirer en faisant redémarrer le findnext > d'un curseur (qui du coup redeviendrait utile) créé un caractère après > le dernier mot trouvé AVANT d'insérer l'image à la place du mot. > Comment insère-tu l'image à la place du mot ? > Cordialement > > Marceau > > Bruno ABRATANSKI a écrit : > >> Voilà le code que j'utilise, à noter que je ne développe pas en basic >> mais >> dans un langage de gestion appelé WinDev. Le code est assez proche. >> Quand la >> ligne commence par // c'est pour les commentaires (REM) >> >> lPosTrouve est un objet OLE dynamique >> >> //Créer un objet JeCherche qui contiendra tous les paramètres >> nécessaires à >> ce remplacement >> :oJeCherche=:oDocument>>createSearchDescriptor() >> >> //Definir la balise à rechercher dans le document OpenOffice Word >> :oJeCherche>>SearchString=pMotARechercher >> >> //Ne rechercher que des mots >> :oJeCherche>>SearchWords=Vrai >> >> lPosTrouve = :oDocument>>findFirst(:oJeCherche) >> >> boucle >> si lPosTrouve = Null alors sortir >> lPosTrouve>>String="" >> lPosTrouve = :oDocument>>findNext(lPosTrouve>>End, :oJeCherche) >> FIN >> >> En fait Je recherche des mots et je les remplace par des valeurs en >> utilisant ReplaceAll sauf que là je veux mettre une image à la place >> du mot. >> Donc le chercher me donne la position, j'efface le mot trouvé et >> j'insere >> l'image. Cela marche bien pour UN seul mot si je ne fais pas le FindNext >> mais si l'utilisateur a placé le mot plusieurs fois je suis coincé >> sans la >> boucle. >> >> >> En tout cas merci pour les réponses déjà apporté. >> >> Bruno >> >> -----Message d'origine----- >> De : Marceau GUIHARD [mailto:[EMAIL PROTECTED] Envoyé : >> lundi 13 novembre 2006 16:11 >> À : prog@fr.openoffice.org >> Objet : Re: [prog] Pb Recherche Remplace dans Writer >> >> Re : >> Petit complément pour le test : >> if isNull(Postrouve) >> marchera si tu veux un booléen >> >> Cordialement >> >> Marceau >> >> Bruno ABRATANSKI a écrit : >> >>> Mettre un false à la place de Null ? >>> >>> Ça empeche pas l'erreur lors du findnext non ? >>> -----Message d'origine----- >>> De : Manuel NAUDIN [mailto:[EMAIL PROTECTED] Envoyé : lundi 13 >>> novembre 2006 12:04 À : prog@fr.openoffice.org Objet : Re: [prog] Pb >>> Recherche Remplace dans Writer >>> >>> Le 13/11/06, Bruno ABRATANSKI <[EMAIL PROTECTED]> a écrit : >>> >>>> >>>> Bonjour, >>>> >>> Bonjour, >>> >>> >>> >>>> Pb lors d'un recherche remplace je fais : >>>> >>>> postrouve = mondocument.findfirst(jecherche) boucle >>>> si postrouve = null sortir >>>> curseur = mondocument.text.cretaetextcursorbyrange(postrouve) >>>> curseur.string = "£" >>>> >>>> postrouve = mondocument.findnext(postrouve,jecherche) >>>> fin >>>> >>>> Lors du findnext j'ai une erreur comme quoi le type de la variable >>>> postrouve est incompatible alors que le findfirst a bien fonctionné ?? >>>> >>>> >>>> >>> moi j'aurais fait : >>> <code> >>> postrouve = mondocument.findfirst(jecherche) boucle >>> si postrouve = false sortir >>> curseur = mondocument.text.cretaetextcursorbyrange(postrouve) >>> curseur.string = "£" >>> >>> postrouve = mondocument.findnext(postrouve, ,jecherche) fin >>> </code> >>> >>>> *Bruno ABRATANSKI** >>>> >>>> * >>>> >>>> >>> Manuel >>> >>> --------------------------------------------------------------------- >>> 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] >> >> >> > > --------------------------------------------------------------------- > 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]