title: VBA difference between public variable and property
body: <p>What is the difference between</p>
  
  <pre><code>Public Variable As Integer
  </code></pre>
  
  <p>and</p>
  
  <pre><code>Private pVariable As Integer
  
  Public Property Let Variable(ByVal lVariable As Integer)
      pVariable = lVariable
  End Property
  
  Public Property Get Variable()
      Variable = pVariable
  End Property
  </code></pre>
  
  <p>in a VBA class module?</p>
  
  <p>And why would I use the second version?</p>