Views

Histats

Vitrine

VBA Excel - Copiando o módulo entre os workbooks - Copy modules from one workbook to another

Inline image 1

Em algumas planilhas, em especial aquelas onde temos uns 4 ou 5 Dashboards, existem funções de navegação e mesmo layouts que são adaptáveis ao seu respectivo conteúdo (contexto). Em muitas delas o comportamento é similar, mas não exatamente igual. Podemos até tornar as funcionalidades customizáveis de acordo com a opção escolhida para análise. Com essa técnica podemos como que estender os 'poderes'  da planilha durante a análise feita nela. Isso é que é polimorfismo! O Mesmo objeto, mas com novas características nos eventos.

Bem, introdução à parte, o código abaixo permite que migre todo o conteúdo de um workbook para outro. Siga a sintaxe:CopyModule Workbooks ("Bernardes_Plan01.xlsb"), "mdl_Navigation_Functions", Workbooks ("Bernardes_Plan0.xlsb")

Sub CopyModule (SourceWB As Workbook, _
                            strModuleName As String, _
                            TargetWB As Workbook)

Dim strFolder As String, strTempFile As String
    Let strFolder = SourceWB.Path

    If Len(strFolder) = 0 Then Let strFolder = CurDir

    Let strFolder = strFolder & "\"
    Let strTempFile = strFolder & "~tmpexport.bas"
    
    On Error Resume Next

    SourceWB.VBProject.VBComponents(strModuleName).Export strTempFile
    TargetWB.VBProject.VBComponents.Import strTempFile
    
    Kill strTempFile
    
    On Error GoTo 0
End Sub


Reference:
Tags: VBA, Excel, content, add, module, módulo, copy, copiar, Module, conteúdo, Modules, Class Modules in VBA, kill, export, workbook   

LinkWithinBrazilVBAExcelSpecialist

Related Posts Plugin for WordPress, Blogger...