|    | 
     VBA初心者です。 
Excel2007でVBAを使用して、Access2007をデータベースとして 
使用しています。 
Access上に作った、複数パラメタを指定する選択クエリを 
以下のコードで実行すると、 
「引数が間違った型、許容範囲外、または競合しています」 
というエラーが出てしまいます。 
このクエリは、テーブルの「月度」というテキスト型の列に対して 
「between [開始月度] and [終了月度]」という 
条件を指定して、この期間の明細を選択表示するものです。 
 
******** コード ******** 
  Dim myConnect As ADODB.Connection 
  Dim myRSet As ADODB.Recordset 
  Dim myCommand As ADODB.Command 
 
  Set myConnect = New ADODB.Connection 
 
  myConnect.Open "File Name=c:\DataLink.udl" 
   
  Set myRSet = New ADODB.Recordset 
  Set myCommand = New ADODB.Command 
 
  With myCommand 
    .ActiveConnection = myConnect 
    .CommandText = "Q_複数パラメタの選択クエリ" 
  End With 
 
  '暫定対応 
  myArray = Array( 
          Format(Worksheets("Sheet1").Range("A1").Value, "yyyymm"),  
          Format(Worksheets("Sheet1").Range("B1").Value, "yyyymm")) 
 
  Set myRSet = myCommand.Execute(Parameters:=myArray) 
************************* 
 
Sheet1の「A1」「B1」には、「2008/06/01」「2008/07/01」の値が 
入っており、セルの書式設定にて「yyyy年mm月」の設定を 
行っております。 
 
イミディエイトウィンドウで 
Format(Worksheets("Sheet1").Range("A1").Value, "yyyymm") 
を調べたところ、「200806」という値が帰ってきました。 
 
ちなみに、Access上でこのクエリを実行すると、 
「200806」「200807」を指定して、正常に動作します。 
 
どなたかお助けください。 
 | 
     
    
   |