
●テーブル1
フィールド1/テキスト型(主キー)
フィールド1
20130128ダイエー
●テーブル2
ID/オートナンバー型(主キー)
テーブル1の主キー/テキスト型
内容/テキスト型
ID テーブル1の主キー 内容
1 20130128ダイエー 牛乳
2 20130128ダイエー 鶏肉
●クエリ1
SELECT テーブル1.*, テーブル2.*
FROM テーブル1 INNER JOIN テーブル2 ON テーブル1.フィールド1 = テーブル2.テーブル1の主キー;
●フォーム1
そのなかにクエリ1に紐づいたサブフォームを設置(データシートビュー)
フォーム1にコンボボックスを設置して、
Private Sub コンボ1_AfterUpdate()
With Me.Controls("クエリ1").Form
.Filter = "ID = '" & Me.コンボ1.Value & "'"
.FilterOn = True
End With
End Sub
このような構成なのですが
フィルタを掛けようとすると、
実行時エラーで 抽出条件でデータ型が一致しません。(エラー 3464)
となってしまいます。
これはフィルタを掛けようとしているデータ型がオートナンバー型だからでしょうか?

No.1ベストアンサー
- 回答日時:
オートナンバー型は、広い意味での数値型の一種になります。
一方、値を「'」または「"」で括った場合は、文字列として渡すことに
なります。
そのため、「数値型のフィールドに対して文字列で抽出している」と
いうことで、ご質問のエラーになっています。
(フィールドへの値の入力の場合は、数値型のフィールドへの「'1'」の
入力は自動で「1」として扱ってくれるのですが、フィルタの場合は
そうはならない仕様のようです)
ですので、以下のように修正すれば、抽出が可能になると思います:
【現在】
.Filter = "ID = '" & Me.コンボ1.Value & "'"
【修正】
.Filter = "ID = " & Me.コンボ1.Value
あーなるほどー
「数値型のフィールドに対して文字列で抽出している」
これが原因だったのですね。スッキリしました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSのリストボックスで複数...
-
クエリ上でフィールド名が2つ...
-
アクセス・テーブルの改行につ...
-
アクセスでの、フォームとテー...
-
アクセスクエリで英数字のみ半...
-
Access 別テーブルにある値を抽...
-
アクセス: フォーム上で計算...
-
ACCESS97の帳票フォームで複数...
-
accessで2つのフィールドを同時...
-
Access where条件式について
-
Access フォーム上でのテキス...
-
ACCESSの時刻の引き算
-
Access フォームで複数テーブル...
-
INT関数のバグ?
-
日付型のフィールドに空白を入...
-
アクセスで追加した項目に全て...
-
差込印刷での全角表示について...
-
SQL文で パラメータが少なすぎ...
-
アクセスのエラー「クエリには...
-
Accessのテーブルのフィールド...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセス・テーブルの改行につ...
-
クエリ上でフィールド名が2つ...
-
Access フォーム上でのテキス...
-
アクセスの追加クエリで教えて...
-
アクセスでの、フォームとテー...
-
Accessで更新履歴情報を保存(...
-
ACCESSのリストボックスで複数...
-
アクセスに自動入力を入れたい
-
アクセスクエリで英数字のみ半...
-
ACCESSの時刻の引き算
-
アクセスのテーブルでコードを...
-
INT関数のバグ?
-
Access 別テーブルにある値を抽...
-
アクセス: フォーム上で計算...
-
Accessでチェックボックスから...
-
Access 住所入力支援が機能しま...
-
Access2013 クエリ内別フィール...
-
Access ルックアップが反映され...
-
アクセスでフォームに入力した...
-
アクセス:SQLでフィールド...
おすすめ情報