duas (espero) perguntas fáceis -
Posso copiar duas guias de File1.xlsm para um arquivo master.XLSX e ainda executar o código da macro? Eu presumo que não?
Supondo que não posso fazer o nº 1, posso copiar as 2 guias em outro arquivo master.xlsm? Se sim, por favor, ajude. Eu tentei o seguinte.
O File1.xlsm apenas possui uma grade com um botão 1 que chama "File1.xlsm"! GetData que preenche a grade.
Consegui clicar com o botão direito do mouse nas guias do Arquivo1.xlsm e mova / copie-os com êxito para master.xlsm, mas sem o vba getData Sub (). Quando clico no botão, ele disse que não conseguiu encontrar o código! GetData. Existe uma maneira limpa de copiar as duas guias e o código da macro! GetData no Master.xlsm?
Obrigado um monte de antecedência!
Respostas:
0 para resposta № 1Para realizar esta tarefa, você deve consideraradicionando o código relevante a um módulo na pasta de trabalho File1. Você precisará habilitar a extensibilidade do Visual Basic na biblioteca da pasta de trabalho File1.
Você precisaria copiar o módulo junto com as duas folhas para a nova pasta de trabalho. Você faria isso com comandos semelhantes aos seguintes.
ActiveWorkbook.VBProject.VBComponents("module1").Export Path
SomeWorkbook.VBE.VBProject.VBComponents.Import Path
Onde path é uma variável de cadeia de caracteres para um local em que você gostaria de colocar o módulo, e algum workbook seria o objeto da pasta de trabalho Master.xlsm.
0 para resposta № 2
with ActiveWorkbook.VBProject
.VBComponents("sheet1").codemodule.addfromstring .VBComponents("Sheet1").codemodule.lines(1,.VBComponents("Module1").codemodule.CountofLines)
end with
sheets(array("sheet1","sheet2")).copy