vba static variable code example
Example 1: vba class static
VERSION 1.0 CLASS
BEGIN
MultiUse = -1
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
Sub TesMe()
With MyStaticClass
.Push "Jay", "circle"
Debug.Print .Element("Jay")
End With
End Sub
Example 2: vba static variable
Function MyStaticFunction(ByVal pToAdd As Integer) As Integer
Static iStatic As Integer
iStatic = iStatic + pToAdd
MyStaticFunction = iStatic
End Function
Sub TesMe()
Debug.Print MyStaticFunction(1)
Debug.Print MyStaticFunction(3)
End Sub