Uma macro exemplo:

/sub CortaCola //
//rem   ==> partindo da célula ativa . ---------------------------//
//rem define variables//
//dim document   as object//
//dim dispatcher as object//
//rem ----------------------------------------------------------------------//
//rem get access to the document//
//document   = ThisComponent.CurrentController.Frame//
//dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")//
//rem ----------------------------------------------------------------------//
//dim args1(1) as new com.sun.star.beans.PropertyValue//
//args1(0).Name = "By"//
//args1(0).Value = 1//
//args1(1).Name = "Sel"//
//args1(1).Value = false//
//dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args1())//
//dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args1())//
//dispatcher.executeDispatch(document, ".uno:Cut", "", 0, Array())//
//rem ----------------------------------------------------------------------//
//dim args4(1) as new com.sun.star.beans.PropertyValue//
//args4(0).Name = "By"//
//args4(0).Value = 1//
//args4(1).Name = "Sel"//
//args4(1).Value = false//
//dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, args4())//
//dispatcher.executeDispatch(document, ".uno:GoUp", "", 0, args4())//
//dispatcher.executeDispatch(document, ".uno:GoUp", "", 0, args4())//
//dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())//
//rem ----------------------------------------------------------------------//
//dim args8(1) as new com.sun.star.beans.PropertyValue//
//args8(0).Name = "By"//
//args8(0).Value = 1//
//args8(1).Name = "Sel"//
//args8(1).Value = false//
//dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, args8())//
//dispatcher.executeDispatch(document, ".uno:ToggleMergeCells", "", 0, Array())// //rem ----------------------------------------------------------------------//
//dim args10(1) as new com.sun.star.beans.PropertyValue//
//args10(0).Name = "By"//
//args10(0).Value = 1//
//args10(1).Name = "Sel"//
//args10(1).Value = false//
//dispatcher.executeDispatch(document, ".uno:GoLeft", "", 0, args10())//
//dispatcher.executeDispatch(document, ".uno:GoLeft", "", 0, args10())//
//dispatcher.executeDispatch(document, ".uno:GoLeft", "", 0, args10())//
//dispatcher.executeDispatch(document, ".uno:ToggleMergeCells", "", 0, Array())// //rem ----------------------------------------------------------------------//
//dim args14(1) as new com.sun.star.beans.PropertyValue//
//args14(0).Name = "By"//
//args14(0).Value = 1//
//args14(1).Name = "Sel"//
//args14(1).Value = false//
//dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, args14())//
//dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args14())//
//end sub/


Em 22/04/2018 12:12, Antonio Silva escreveu:
Olá pessoal

Estou tentando fazer uma macro bem simples no Calc.

A partir de uma célula ativa movo o duas células para baixo, recorto, movo
uma célula para o lado direito e duas células para cima, colo, movo uma
célula para direira, desmarco Mesclar, movo três células para esquerda,
desmarco Mesclar, movo uma célula para direita e uma para baixo.

No entanto isso deve ser feito de forma relativa. Não em uma célula
determinada, mas a partir de uma célula ativa.

Fiz muito esse tipo de macro no Excel mas há um bom tempo só uso o
LibreOffice no Linux. Esta é a primeira vez que necessito fazer uma macro
no Calc.

Agradeço qualquer sugestão.

Abraços e boa semana para todos.



--
Você está recebendo e-mails da lista usuarios@pt-br.libreoffice.org
# Informações sobre os comandos disponíveis (em inglês):
 mande e-mail vazio para usuarios+unsubscr...@pt-br.libreoffice.org
# Cancelar sua assinatura: mande e-mail vazio para:
 usuarios+unsubscr...@pt-br.libreoffice.org
# Arquivo de mensagens: https://listarchives.libreoffice.org/pt-br/usuarios/

Responder a