Skapa händelseprocedurer


Här demonstreras en teknik för att skapa en händelseprocedur för ett arbetsblad.

Glöm inte av att ange en referens "Microsoft Visual Basic for Applications Extensibility 5.3".

 

Option Explicit  

Sub Skapa_Handelseprocedur()

   '© 2003 Alla rättigheter XL-Dennis

   Dim wbBok As Workbook

   Dim wsBlad As Worksheet

   Dim cdModul As VBIDE.CodeModule

   Dim lnHandelse As Long

 

   Set wbBok = ThisWorkbook

   Set wsBlad = wbBok.Worksheets.Add

   Set cdModul = wsBlad.Parent.VBProject.VBComponents(wsBlad.Name).CodeModule

 

   'Här skapar vi händelsen Private Sub Worksheet_Activate().

   lnHandelse = cdModul.CreateEventProc("Activate", "Worksheet")

 

   'Här skapar vi innehållet i den nya händelseproceduren.

   With cdModul

      .InsertLines lnHandelse + 1, "Me.UnProtect Password:=""xxx"""

      .InsertLines lnHandelse + 2, "MsgBox ""Bladskyddet borttaget."""

   End With

 End Sub