How to keep values in classmodules

  • Thread starter Gottfried Ehmann
  • Start date
G

Gottfried Ehmann

I have

Module modtest
Classmodule clsTest


modtest.FirstCall

Sub FirstCall
StoreValue = 1
Debug.print StoreValue
End sub


modtest.SeondCall
Sub secondCall
Debug.print StoreValue
End sub

in clsTest I have:

Proberty Let StoreValue (newvalue as integer)

m_storeValue = newvalue

End property

Proberty Get StoreValue (newvalue as integer)

StoreValue = m_storeValue

End property



What ever I tried in modTest second call StoreValue in
modtest.SeondCall always has been 0
Is there any help how to Dim m_storeValue in the Classmodule using
static, so that modtest.SeondCall has the same value as in FirstCall

Thanks for help. Gottfried
 
J

John Green

Gottfried,

Here is one way to set up your modules.

Module modTest
----------------------------------------------------------------
Option Explicit

Dim cls As New clsTest

Sub FirstCall()
cls.StoreValue = 1
Debug.Print cls.StoreValue
End Sub


Sub SecondCall()
Debug.Print cls.StoreValue
End Sub
-----------------------------------------------------------------

Class Module clsTest
-----------------------------------------------------------------
Option Explicit
Private m_storeValue As Integer

Property Let StoreValue(newvalue As Integer)

m_storeValue = newvalue

End Property

Property Get StoreValue() As Integer

StoreValue = m_storeValue

End Property
 
G

Gottfried Ehmann

Thanks John,
I tried everything but putting
'Dim clslz As New clsTest'
on module level instead of procedure level

Tanks again

Gottfried
 
Top