title: How best to call a public sub routine declared in a form used as the source object a subform control from the main form?
body: <p>I have a form MyForm1  with a module having the method.</p>
  
  <pre><code>Public Sub CreateSQL(ProductID as variant) 
  
      Me.Recordsource = " SELECT * FROM ProductOrders " _ 
                        " WHERE ProductID = " &amp; Nz(ProductID ,0)    
  
      Me.Requery
  
  End Sub
  </code></pre>
  
  <p>I use this as a subform to a form named MyMainForm.</p>
  
  <p>When I change the value of a control on MyMainForm it successfully executes the following line:</p>
  
  <pre><code>Me.Subform1.Form.CreateSQL ProductID:=Me.cboProductID 
  </code></pre>
  
  <p><strong>My Questions:</strong> </p>
  
  <ol>
  <li><p>Why are the members not listed on the intellisense list  that appears after I type <code>Me.Subform1.Form.</code>?</p></li>
  <li><p>Is there a way of getting them to be listed?</p></li>
  <li><p>Is there a property that will let me access the "Form_MyForm1" class of the form referenced in the subform control "Source object property"   (ie the Me.Subform1.form )  ?</p></li>
  </ol>
  
  <p>It's like I need to be able to write:</p>
  
  <pre><code>Me.Subform1.Form_MyForm1.CreateSQL   ProductID:=Me.cboProductID
  </code></pre>
  
  <p>Does such a property already exist? If so how do I access it? Is it in the properties collection?</p>
  
  <p><strong>PS:</strong> If you need more information please see the same questions posted in a long Stack overflow question <a href="https://stackoverflow.com/questions/31606432/the-ms-access-subform-control-intellisense-does-not-list-all-form-class-members">here</a></p>
  
  <p>Harvey</p>