none
Mettre à jour le texte d'un signet sans détruire le signet RRS feed

  • Question

  • Bonjour

    Je cherche à mettre a jour des signets sans les détruire. Ce petit code y arrive très bien :

    Sub MettreAJourSignet()
      Dim BMRange As Range
    ' identifie le Range du signet range et insert le texte
      Set BMRange = ActiveDocument.Bookmarks("S_OSA2").Range
      BMRange.Text = "Hello world2"
    ' Re-insère le signet
      ActiveDocument.Bookmarks.Add "S_OSA2", BMRange

    End Sub

    Mais je développe sous Lotus Script par automation Word et je ne peux pas déclarer sous Lotus Script un objet de type RANGE. Donc je dois récupérer dans des variables simples et non pas des objets le "Range" du signet.

    C'est ces deux lignes que je voudrais remplacer :

      Set BMRange = ActiveDocument.Bookmarks("S_OSA2").Range

      BMRange.Text = "Hello world2"

    J'ai essayé ceci :

    ActiveDocument.Bookmarks.Add "S_OSA2", ActiveDocument.Bookmarks("S_OSA2").Range
    ActiveDocument.Bookmarks("S_OSA2").Range.Text = "Hello World 2"

    Mais malheureusement cela détruit le signet. Donc il faudrait insérer le texte AVANT de recréer le signet.

    Merci pour votre aide.

    mardi 7 octobre 2014 10:00

Toutes les réponses

  • Bonjour,

    Qu'est-ce qu'on en dit dans les forums Lotus Script ? Pas moyen de déclarer une référence à Word ?

    Sinon on peut prendre le problème dans l'autre sens, on connaît le texte donc sa longueur, on se retrouve à la fin (ou au début ?) donc on peut en déduire un déplacement à faire pour sélectionner le texte. Une fois que c'est fait il doit y avoir moyen de créer un signet sur la sélection.

    mardi 7 octobre 2014 21:38