title: Display alternate UserForm dependent on variable
body: <p>I want to display a specific UserForm dependent on the UserName environment variable.  I update the userform in various places throughout the code so I thought it would be easiest (and trivial) to create two independent userforms (with wildly different designs) then use logic to "Set" a UserForm object variable at the beginning of the code.  I'm clearly misunderstanding something here, cause when it gets to the .Show command, VBA errors:</p>
  
  <pre><code>Dim usrForm As UserForm
  
  If Environ("UserName") = "redacted" Then
      Set usrForm = LlamaForm 'for specific user, form styled differently including picture of Llama
  Else
      Set usrForm = NormalForm 'for EVERYONE ELSE, normal professional looking form
  End If
  
  With usrForm 'initialize UserForm and display wait message
      .Cancelbutton.Visible = False
      .Proceedbutton.Visible = False
      .Exitbutton.Visible = False 
      .labmsg.Caption = Chr(10) &amp; Chr(10) &amp; Chr(10) &amp; "Starting background processes, please wait..."
      .Show vbModeless
  End With
  </code></pre>
  
  <p>Am I making this too complicated?  I was really hoping to just change the referenced form object at the beginning rather than introducing logic with redundant code each time I need to update the user.  Any ideas or improvement would be appreciated.  Caveat is, because they are wildly different layout/design, I would <em>really</em> like to keep two separate userforms rather than manipulating a single one (which I know can be done, but that is more work at this point compared to understanding why my method above isn't working.)</p>