VBA Excel - Delete uma procedure específica dentro do módulo - Delete a procedure from a module using VBA


Dificilmente as senhas das planilhas hoje não são quebradas com grande facilidade, poucos de nós sabemos resguardar a segurança dos nossos códigos, que afinal de contas são resultado do nosso suor em codificar, decodificar e criar um algoritmo que atenda aos nossos clientes. Como nos proteger?

Não me perguntem o motivo de aprender a fazer isso, se você nunca pensou em fazê-lo é porque ainda está distante de merecer utilizá-lo.

Como posso deletar uma procedure dentro de um módulo na minha aplicação utilizando o VBA?

Sub DelProc (ByVal wb As Workbook, ByVal DeleteFromModuleName As String, ByVal ProcedureName As String)

Dim VBCM As CodeModule, ProcStartLine As Long, ProcLineCount As Long

On Error Resume Next

Set VBCM = wb.VBProject.VBComponents(DeleteFromModuleName).CodeModule

If Not VBCM Is Nothing Then
Let ProcStartLine = 0
Let ProcStartLine = VBCM.ProcStartLine(ProcedureName, vbext_pk_Proc)
 
If ProcStartLine > 0 Then ' prosedyren finnes, slett den
 
Let ProcLineCount = VBCM.ProcCountLines(ProcedureName, vbext_pk_Proc)
 
VBCM.DeleteLines ProcStartLine, ProcLineCount
 
End If
 
Set VBCM = Nothing
 
End If
 
On Error GoTo 0
End Sub

Tags: Bernardes, MS, Microsoft, Office, Excel, delete, erase, module, procedure, function

André Luiz Bernardes
A&A® - Work smart, not hard in any place.
bernardess@gmail.com

Nenhum comentário:

Postar um comentário

diHITT - Notícias