ACCESS VBA パラメータクエリをEXCEL出力

ACCESS VBA で パラメータクエリをEXCEL出力する際に「パラメータ3が少なすぎます」とのエラーが出る。クエリの抽出条件にあるフォームのコンボの値を参照する式がVBAからは参照出来ないためらしい。

この場合

Dim dbs As DAO.Database
Dim rst As DAO.Recordset
Dim qdf As DAO.QueryDef
Set qdf = dbs.QueryDefs(“Q会社別月報_I”)

With qdf
.Parameters(“[Forms]![F応援月報_I]![cboENC]”) = Forms!F応援月報_I!cboENC
.Parameters(“[Forms]![F応援月報_I]![cboNEN]”) = Forms!F応援月報_I!cboNEN
.Parameters(“[Forms]![F応援月報_I]![cboMONTH]”) = Forms!F応援月報_I!cboMONTH

Set rst = .OpenRecordset
.Close
End With

のようなソースでパラメータを明示することで、動作するようになる。