title: undocumented vba special keywords - Circle and Scale
body: <p>The <a href="http://msdn.microsoft.com/en-us/library/ee199674.aspx">VBA documentation</a> defines the following token:</p>
  
  <pre><code>special-form = “Array“ / “Circle” / “Input” / “InputB” / “LBound” / “Scale” / “UBound”
  </code></pre>
  
  <p>According to the documemtation:</p>
  
  <blockquote>
    <p>A <em>special-form</em> is a <em>reserved-identifier</em> that is used in an expression as if it was a program defined procedure name but which has special syntactic rules for its argument.</p>
  </blockquote>
  
  <p>But there is no mention of the purpose of these keywords, nor there number, type of parameters and return values.</p>
  
  <p>Some are documented in other places:</p>
  
  <ul>
  <li><em>Array</em> returns a literal array with an variable number of parameters</li>
  <li><em>Input</em> and <em>InputB</em> are used with <em>line</em></li>
  <li><em>LBound</em> and <em>Ubound</em> returns respectively  tho first and last index of an array, same as VB</li>
  </ul>
  
  <p>My question is:<br>
  What is the purpose of <em>Circle</em> and <em>Scale</em> and how are they used ?</p>
  
  <p>I found the correct (odd) syntax of <em>Circle</em> which is the same as the <a href="http://www.antonis.de/qbebooks/gwbasman/circle.html">BASIC statement</a></p>
  
  <pre><code>CIRCLE(xcenter, ycenter), radius[,[color][,[start],[end][,aspect]]]
  </code></pre>
  
  <p>and gives no syntax error (I didn't find any mention of <em>Scale</em> though it doesn't seem to have any parameters) but I can't assign it to a variable, and if I try to run the code below (which is syntaxically correct) I get the following error:</p>
  
  <blockquote>
    <p>Method not valid without suitable object</p>
  </blockquote>
  
  <p>code:</p>
  
  <pre><code>Sub test1()
      Circle (5, 5), 10
  End Sub
  
  Sub test2()
      Scale
  End Sub
  </code></pre>