Pergunte aqui
1

Botão para copiar um valor e colá-lo em determinada célula fixa.

perguntadas 2017-04-27 21:45:46 +0200

imagem do gravatar de thiago_thigf

updated 2017-05-06 05:05:16 +0200

Boa tarde. Estou tentando criar uma macro para fazer um botão que copie qualquer célula selecionada da planilha e cole numa célula fixa qualquer. Obrigado pela atenção. Exemplo: quando eu clicar no botão, e a célula selecionada for a A1, a célula B1 fica com o valor da A1. Clicando no botão com a célula A2 selecionada, a célula B1 fica com o valor da A2.

No excel ela é assim:

Sub Macro1()

Selection.Copy
Cells(2, 2).Select
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

End Sub
editar alterar tag assinalar como ofensivo fechar mesclar Excluir

1 Resposta

1

respondidas 2017-04-27 22:25:52 +0200

updated 2017-04-28 05:28:59 +0200

Feito pelo gravador de macro, neste exemplo, nomiei o local de colagem como "copiar_aqui".

sub Copiar_la
rem ----------------------------------------------------------------------
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 ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "copiar_aqui"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())
end sub

Digite em qualquer célula, e selecione-a.

E acione no menu [ Copiar ] a macro Copiar_la.

Arquivo teste. <===

editar assinalar como ofensivo Excluir Link mais

Comentários

Nossa, muito bom hein. Eu queria colocar essa macro num retângulo dentro da planilha. E onde está a célula B2 nesse código para eu poder escolher qualquer outra célula?

imagem do gravatar de thiago_thigfthiago_thigf ( 2017-04-28 14:59:10 +0200 )editar

@thiago_thigf, na planilha a célula B2 esta nomeada "copiar_aqui", desta maneira posso estar em qualquer aba que a copia será nesta célula.

Por exemplo na macro esta assim ==> args2(0).Value = "copiar_aqui"

Poderia ser assim ==> args2(0).Value = "Planilha1.B2"

Porém se for desta maneira ==> args2(0).Value = "B2", e acionar a Macro em aba diferente, será colada na aba onde acionou.

Coloque o acionamento em um Botão, mas no Menu e mais pratico.

imagem do gravatar de Gilberto SchiavinattoGilberto Schiavinatto ( 2017-04-29 00:44:45 +0200 )editar

Funcionou perfeitamente! Muito obrigado pela ajuda!

imagem do gravatar de thiago_thigfthiago_thigf ( 2017-05-05 02:23:58 +0200 )editar
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2017-04-27 21:45:46 +0200

Lidas: 665 vezes

Última atualização: Apr 28 '17