title: msoShapeOval entered in cell not allowed to be value for variable declared as MsoShapeType
body: <p>In the attached code everything works except assigning the value to shpOval3.</p>
  
  <p>I am trying to take the text from a cell and assign it to a variable declared as MsoShapeType.</p>
  
  <p>1) The code misfires with Type mismatch when it attempts to assign the cell value of msoShapeOval to shpOval3 (declared as MsoShapeType).</p>
  
  <p>2) If I try strOval4 (string) instead in <code>.Shapes.AddShape(strOval4, Left, Top, Width, Height)</code> it also misfires and says Type mismatch.</p>
  
  <p>I am trying to avoid converting to an msoShapeType constant in the cell as the cell value is loaded into a combobox on a form and the value of 9 is meaningless to the users. I can convert if necessary but am looking for a solution without converting.</p>
  
  <pre><code>Sub ShpType()
  
  Dim shpOval1 As Long
  Dim shpOval2 As MsoShapeType
  Dim shpOval3 As MsoShapeType
  Dim strOval4 As String
  
  Sheets("Data").Range("Company1Shape") = "msoShapeOval"
  
  shpOval1 = msoShapeOval
  shpOval2 = msoShapeOval
  shpOval3 = Sheets("Data").Range("Company1Shape")
  strOval4 = Sheets("Data").Range("Company1Shape")
  
  Debug.Print "shpOval1 = "; shpOval1
  Debug.Print "shpOval2 = "; shpOval2
  Debug.Print Sheets("Data").Range("Company1Shape")
  Debug.Print "shpOval3 = "; shpOval3
  Debug.Print "strOval4 = "; strOval4
  
  End Sub
  </code></pre>
  
  <pre><code>Debugger results with shpOval3 commented out
  shpOval1 =  9 
  shpOval2 =  9 
  msoShapeOval
  shpOval3 =  0 
  strOval4 = msoShapeOval
  </code></pre>