title: Populate RowSource and RecordSource without a persistent db connection
body: <p>As the title suggests, I wondered if it was possible to populate a RecordSource or RowSource without maintaining a persistent connection to the external database I am querying.</p>
  
  <p>I have tried two methods listed below to no avail:</p>
  
  <blockquote>
    <p>IN Clause</p>
  </blockquote>
  
  <pre><code>ps.RecordSource = " SELECT TM_Adjudicator AS Adjudicator, Nz(Sum(PS_DB_view.PS_Points+PS_DB_view.PS_Adhoc),0) AS [Total Points] " &amp; _
                        " FROM SD_Adjudicators_view " &amp; _
                        " LEFT JOIN PS_DB_view ON (((cstr(SD_Adjudicators_view.TM_Adjudicator) = cstr(PS_DB_view.PS_Adjudicator)) AND cdate(PS_DB_view.PS_Date) &gt;= #" &amp; dtStart_fmt &amp; "#) AND cdate(PS_DB_view.PS_Date) &lt;= #" &amp; dtEnd_fmt &amp; "#) " &amp; _
                        " IN '' [MS Access;PWD=**STRING**;DATABASE=I:\**PATH**\PM_DB_view.accdb] " &amp; _
                        " WHERE SD_Adjudicators_view.TM_TeamName = 'Z999' " &amp; _
                        " GROUP BY TM_Adjudicator; "
  </code></pre>
  
  <p>(this maintains a persistent connection for the life of the userform</p>
  
  <blockquote>
    <p>DB.Connection</p>
  </blockquote>
  
  <pre><code>Set dbs = OpenDatabase("I:\**PATH**\PM_DB_testenvironment.accdb", False, False, "MS Access;**STRING**")
  Set rst = dbs.OpenRecordset(" SELECT TM_Adjudicator AS Adjudicator, Nz(Sum(PS_DB_view.PS_Points+PS_DB_view.PS_Adhoc),0) AS [Total Points] " &amp; _
                                                                  " FROM SD_Adjudicators_view " &amp; _
                                                                  " LEFT JOIN PS_DB_view ON (((cstr(SD_Adjudicators_view.TM_Adjudicator) = cstr(PS_DB_view.PS_Adjudicator)) AND cdate(PS_DB_view.PS_Date) &gt;= #" &amp; dtStart_fmt &amp; "#) AND cdate(PS_DB_view.PS_Date) &lt;= #" &amp; dtEnd_fmt &amp; "#) " &amp; _
                                                                  " WHERE SD_Adjudicators_view.TM_TeamName = 'Z999' " &amp; _
                                                                  " GROUP BY TM_Adjudicator; ")
  
      Set ps.Form.RecordSource = rst
  
      rst.Close
      Set rst = Nothing
  
      dbs.Close
      Set dbs = Nothing
  </code></pre>
  
  <p>This too maintains a persistent connection until the close function is called, and the RowSource / RecordSource values are lost.</p>
  
  <p>Is there anyway to read the data, display it, and close the database whilst keeping the records visible?</p>