Programação de Componentes de Projectos de VBA
Transcrição
Programação de Componentes de Projectos de VBA
7 Programação de Componentes de Projectos de VBA […] 7.3.4. MANIPULAÇÃO PROGRAMÁTICA DE CÓDIGO DE VBA O modelo de objectos da VBIDE contém classes que permitem criar, substituir e apagar linhas de código de VBA em tempo de execução. Demonstramos estas operações através de pequenos programas que referenciam módulos standard, módulos de classe e módulos de código, associados a folhas de cálculo e a interfaces gráficas. Geração de código de VBA VarModulo.AddFromString Arg1 Arg1 – variável alfanumérica adiciona as instruções de VBA guardadas numa variável alfanumérica ao final do módulo. O procedimento GerarCodigo cria, no módulo standard NovoCodigo, o procedimento Mensagem. Sub GerarCodigo() Dim CM As CodeModule, Prog As String Set CM=Application.VBE.ActiveVBProject. VBComponents("NovoCodigo").CodeModule Prog = "Public Sub Mensagem" + chr(13) Prog = Prog + "Msgbox ""Ola, boa tarde""" + Chr(13) Prog = Prog + "End Sub" CM.AddFromString Prog End Sub Este procedimento gera, em tempo de execução, o seguinte procedimento no módulo NovoCodigo do projecto activo: Public Sub Mensagem() MsgBox "Olá, boa tarde!" End Sub © FCA - Editora de Informática 169