2012-01-09 21 views
4
Dim sort_slots_sql As String 
sort_slots_sql = _ 
    "select date, part, service, slot" & _ 
    " from ass_slots, ass_occasions" & _ 
    " where ass_slots.occasion = ass_occasions.occasion" & _ 
    " order by slot, service, date, part" 
Set slots_rst = db.OpenRecordset(sort_slots_sql) 

これはパラメータエラーが少なすぎます。 1つは期待される。コード内の別の場所には、ほぼ同じ状況がありますが、2つのパラメータが必要です。Access 2003 VBA SQL「パラメータが少なすぎます」エラー

答えて

5

私は結論的には言えませんが、テーブルに存在しないクエリにフィールド名を含めたことが99%確信しています。すべてのフィールド名を確認し、テーブルにあるようにスペルが正しいことを確認します。

また、「日付」フィールドはAccessの予約語である可能性が高い疑いがあります。フィールド "Date"の名前を付けないことをお勧めします。あなたがその名前で立ち往生している場合は、そのようなすべてのクエリで角括弧で囲み:

Dim sort_slots_sql As String 
sort_slots_sql = _ 
    "select [date], part, service, slot" & _ 
    " from ass_slots, ass_occasions" & _ 
    " where ass_slots.occasion = ass_occasions.occasion" & _ 
    " order by slot, service, [date], part" 
Set slots_rst = db.OpenRecordset(sort_slots_sql) 
+0

正しい、列は「データム」と命名されたテーブルのいずれかで(スウェーデンの日付のため)。どうもありがとう! –

+0

あなたは賭けます。そのエラーを百万回見た。あなたのアプリに幸運。 – JohnFx

+2

あなたは*多くのエラーを見たことがあります。あなたは "二重入札者が多すぎます"についてこれまで見たことがありますか? ;) – onedaywhen

関連する問題