OpenOffice Writer. Макрос: замена выделенного текста - PullRequest
2 голосов
/ 15 июля 2011

Я пытаюсь создать макрос, который изменит и заменит текущий выделенный текст в OpenOffice Writer.

Пока мой макрос выглядит так:

sub myReplaceSelection
Dim oDoc
Dim oVC
Dim R As String

oDoc = ThisComponent
oVC = oDoc.CurrentController.getViewCursor
If Len(oVC.String) > 0 Then
   R = processSelection(oVC.String)
   'replace the selection:
   'which function should I call here ? <------------------
   '
EndIf
End sub

Function processSelection( s As String) As String
 '... ok , this part works fine
End Function

Как я могузаменить текущий выделенный текст моей строкой 'R'?

Спасибо

1 Ответ

0 голосов
/ 15 июля 2011

ОК, понял:

If Len(oVC.String) > 0 Then
  oVC = oDoc.CurrentController.getViewCursor
  If Len(oVC.String) > 0 Then
  Dim document   as object
  dim args1(0) as new com.sun.star.beans.PropertyValue
  args1(0).Name = "Text"
  args1(0).Value = processSelection(oVC.String)
  document = oDoc.CurrentController.Frame
  dispatcher.executeDispatch(document, ".uno:InsertText", "", 0, args1())
EndIf
...