Página 1 de 1

Código para atribuir Macro

Enviado: 26 Out 2018 às 14:27
por ctcarlosteles
Boa tarde,

Quero gerar um código para atribuir uma Macro existente à um objeto.
Ao gravar Macro para tentar encontrar o código correspondente, dá no seguinte resultado:

Sub Macro2()
ActiveSheet.Shapes.Range(Array("Rounded Rectangle 16")).Select
Selection.OnAction = "Planilha1.Sortear"
End Sub


Entretanto, ao tentar rodar esta Macro, a mesma não funciona.
Alguém sabe o código correto?

Re: Código para atribuir Macro

Enviado: 26 Out 2018 às 16:44
por osvaldomp
Qual o nome da macro? Planilha1.Sortear ou Sortear ?

Em que módulo está essa macro ?

Re: Código para atribuir Macro

Enviado: 26 Out 2018 às 17:03
por ctcarlosteles
Boa tarde,
Poderia ajudar no arquivo em anexo?
O objetivo é atribuir a "Macro3" na forma "Rounded Rectangle 15" através do botão "Atribuir Macro" (Macro 2). Os códigos estão no Módulo 2.

Re: Código para atribuir Macro

Enviado: 26 Out 2018 às 20:32
por osvaldomp
Os Retângulos estão agrupados. Se for viável desfazer o agrupamento utilize o primeiro código abaixo, se não, utilize o segundo.
Código: Selecionar todos
Sub Macro2()
 ActiveSheet.Shapes("Retângulo: Cantos Arredondados 15").OnAction = "Macro3"
End Sub
Código: Selecionar todos
Sub Macro2()
 ActiveSheet.Shapes("Grupo 2").Ungroup
 ActiveSheet.Shapes("Retângulo: Cantos Arredondados 15").OnAction = "Macro3"
 ActiveSheet.Shapes.Range("Retângulo: Cantos Arredondados 15").Regroup.Name = "Grupo 2"
End Sub