Macro que no funciona desde un Botón

En un archivo de Calc una macro que copia contenidos de celdas a otra hoja funciona desde el editor de Macros pero cuando la ejecutas desde un botón en la hoja funciona mal y no copia el contenido.

El resto de macros aparentemente funcionan correctamente

Se trata de un ejemplo de factura que he adaptado:
https://blog.open-office.es/calc/modelo-de-factura-con-macros-para-imprimir-exportar-a-pdf-y-generar-resumenes

Por lo que he indagado puede tratarse de la versión del LO. Actualmente trabajo con la 6.1 en Mac. Pero no se que hay que modificar para que se corrija este fallo.

El problema es con el siguiente macro:

Sub EnviarDatos
'----------------------------------------------------------------------
  Dim document   As Object
  Dim dispatcher As Object

  document   = ThisComponent.CurrentController.Frame
  dispatcher = CreateUNOService("com.sun.star.frame.DispatchHelper")

  Dim aSaltarA(0) As New com.sun.star.beans.PropertyValue
  aSaltarA(0).Name = "ToPoint"
  aSaltarA(0).Value = "DatosFactura"
  dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, aSaltarA())

  dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

  aSaltarA(0).Value = "ResumenInsertarFila"
  dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, aSaltarA())

  Dim aMover(1) As New com.sun.star.beans.PropertyValue
  aMover(0).Name = "By"
  aMover(0).Value = 1
  aMover(1).Name = "Sel"
  aMover(1).Value = False
  dispatcher.executeDispatch(document, ".uno:InsertRows", "", 0, Array())

  Dim aPegadoEspecial(5) As New com.sun.star.beans.PropertyValue
  aPegadoEspecial(0).Name = "Flags"
  aPegadoEspecial(0).Value = "SVDN"
  aPegadoEspecial(1).Name = "FormulaCommand"
  aPegadoEspecial(1).Value = 0
  aPegadoEspecial(2).Name = "SkipEmptyCells"
  aPegadoEspecial(2).Value = False
  aPegadoEspecial(3).Name = "Transpose"
  aPegadoEspecial(3).Value = True
  aPegadoEspecial(4).Name = "AsLink"
  aPegadoEspecial(4).Value = False
  aPegadoEspecial(5).Name = "MoveMode"
  aPegadoEspecial(5).Value = 4

  dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, aPegadoEspecial())

  aMover(0).Value = 22
  dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, aMover())

  aMover(0).Value = 1
  dispatcher.executeDispatch(document, ".uno:GoUp", "", 0, aMover())

  aMover(1).Value = True
  dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, aMover())

  dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

  aMover(1).Value = False
  dispatcher.executeDispatch(document, ".uno:GoLeft", "", 0, aMover())
  dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, aMover())

  aPegadoEspecial(0).Value = "A"
  aPegadoEspecial(3).Value = False
  dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, aPegadoEspecial())
  
  aSaltarA(0).Value = "ResumenInsertarFila"
  dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, aSaltarA())  

  aSaltarA(0).Value = "CodCliente"
  dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, aSaltarA())
  
  MsgBox ("Datos enviados a la hoja Resumen", 192, "open-office.es")

End Sub

No utilice el botón, utilice imágenes o figura geométrica, ya he tenido este problema.

Funciona perfectamente. Muchas gracias, curioso problema.