vba static class variable code example

Example: vba class static

' Import as a file MyStaticClass.cls:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
END
Attribute VB_Name = "MyStaticClass"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private mStaticCol As New Collection

Public Sub Push(ByVal pIndex As String, ByVal pValue As String)
Attribute Push.VB_Description = "Pushes a new value into StaticCol."
    mStaticCol.Add pValue, pIndex
End Sub

Public Property Get Element(ByVal pIndex As String) As String
Attribute Element.VB_Description = "Returns the element."
    Element = mStaticCol.Item(pIndex)
End Property
'--------------------------------------------------------------
' In a module:
Sub TesMe()
  With MyStaticClass        'No instanciation, mStaticCol is shared
        .Push "Jay", "circle"
        Debug.Print .Element("Jay")
    End With
End Sub

Tags:

Vb Example