Boa noite, @topscore
Vi que vc já marcou o tópico como resolvido. Se de fato está resolvido, seria interessante compartilhar a solução com os demais colegas.
Se ainda não resolveu, comente aqui até que ponto chegou pra tentarmos ajudar.
Com relação ao problema descrito, para criar botões on the fly, melhor seria ao invés de controles ActiveX (OleObjects, no caso MSForms.CommandButton) usar botão tipo controle de formulário mesmo (Excel.Button) ou formas (Shapes) pois aí é só atribuir o nome da macro já criada à propriedade OnAction da forma. Outra vantagem ainda é que vc pode ter uma única Sub para atender a muitos botões criados.
Já os CommandButtons tipo ActiveX vc teria que inserir o código no módulo da Planilha recém-criada também on the fly, o que aumentaria desnecessariamente, no meu entendimento, a complexidade do código.
Vc também poderia criar formas nas novas planilhas e associar hiperlinks a elas ao invés de macro, direcionando para uma planilha mestre que tenha o botão de acessar o UserForm.
Postado : 10/05/2021 3:01 am