Como as macros padrão para executar a partir desta pasta de trabalho, nem todas as pastas de trabalho abertas?

0

Temos uma pasta de trabalho habilitada para macro (ver. 2010) que muitas pessoas usam. Algumas dessas pessoas têm macros em sua pasta de trabalho Personal.xlsb. Temos uma situação em que a macro na pasta de trabalho compartilhada é nomeada da mesma forma que uma macro em pastas de trabalho pessoais, mas faz coisas ligeiramente diferentes.

Para evitar a execução da macro incorreta, eu gostaria de usar como padrão a pasta de trabalho compartilhada para executar as macros desta pasta de trabalho, em vez de todas as pastas de trabalho abertas. Espero colocar algo em WorkBook_Open() , mas o que?

Existe uma maneira de alterar a opção padrão para Macros em: All Open Workbooks to This Workbook ?

    
por B540Glenn 27.01.2016 / 16:40

2 respostas

0

Se eu renomear os módulos que armazenam as sub-rotinas, posso especificar exatamente qual sub-chamar.

Exemplo:
No Modlue1, renomeado para LocalModule1, eu tenho:

Sub TestDupe()
    Call LocalModule1.DuplicateName
End Sub

Public Sub DuplicateName()
    ActiveSheet.UsedRange
    MsgBox ("new mod 1")
End Sub

No Módulo2, renomeado para ser LocalModule2, tenho

Public Sub DuplicateName()
      ActiveSheet.UsedRange
      MsgBox ("mod 2")
End Sub

Ao alterar o qualificador na chamada de LocalModule1 para LocalModule2 , agora posso ditar qual sub-rotina com o mesmo nome executar.

    
por 10.12.2016 / 17:37
0

Vocês podem renomear a macro na pasta de trabalho compartilhada e substituir as instâncias dessa macro nessa pasta de trabalho específica?

    
por 27.01.2016 / 18:13