質問: access2003 検索用フォームでの検索がうまくいかない access2003 検索用フォームでの検索がうまくいかない とある、テーブルを参照するフォームを作成。 そしてテキストbokを設けて、各項目毎にキーワードを指定してデータを抽出できるようにしたいのですが、 どうもうまくいきません。 検索は出来ているのですが、全部ひっかからないのです。 例えば id という項目を検索するbox に"1"を入力して id=1の全データを抽出しようとすると、一部検索にかかってこないものがある という具合です。 テーブルに入力されている数字や文字が本当に一致しているかどうかも調べましたが確かに一致しています。 実際、テーブルを開いて ctr+f で検索すると全てひっかかります。 何が原因なのでしょうか??? 私の作った手順は以下のとおりです。 テーブル作成(エクセルからインポート) ※空白の欄もあります フォーム新規作成でフォーム作成 フォーム上にテキストbox作成 クエリ作成 (like "*" & [forms]![フォーム名]![テキストbox名] & "*" ) マクロ作成⇒フィルタ実行/上の手順で作ったクエリを登録 マクロをフォーム上へドロップ およそこのような手順です。
回答: >"1"を入力して id=1の全データを抽出しようとすると 1と入れたとき、idが21とか121とかも検索するのですか。 likeを使う理由が判らない(あまり想像できない)。 もうひとつidフィールドのデータ型はなに?を質問に書かないと。 idがオートナンバー型であれば、ワイルドカード*を直接使えないのでは。 新たな列を挿入しで、str([id])で文字列化して、その列で like "*1"のようなのは1,11など出てきたが。 またida: [id] mod 10と新たに演算フィールド列を作り、条件で1とするなど。 パラメータクエリにして、1を指定するとどうなりますか。*1では?