• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access BetweenとLikeの組み合わせ方)

Access BetweenとLikeの組み合わせ方

このQ&Aのポイント
  • Access2000(初心者)のフォームで、指定日の範囲内にありつつチェックボックスが'No'ではないレコードを検索削除する方法について教えてください。
  • 下記のコードを実行すると、実行時エラー'3061'が出てしまいます。どこを修正すれば良いでしょうか?
  • CurrentDb.Execute "DELETE * FROM テーブル名 WHERE ([テーブル名].[日付] Between #2009/01/01# And #2009/02/02#) AND ((([テーブル名].[チェックボックス]) Like 'No'));"

質問者が選んだベストアンサー

  • ベストアンサー
noname#140971
noname#140971
回答No.1

tab1: ID_日付_______チェックボックス _1_2009/01/01_No _2_2009/02/02_Yes _3_2009/03/03_No [イミディエイト ウインドウ] ? CnnExecute("DELETE * FROM tab1 WHERE 日付 Between #2009/01/01# And #2009/02/02# AND [チェックボックス]=False") True tab1: ID_日付_______チェックボックス _2_2009/02/02_Yes _3_2009/03/03_Noo と、成功! ? CnnExecute("DELETE FROM tab1 WHERE ([tab1].[日付] Between #2009/01/01# And #2009/02/02#) AND ((([tab1].[チェックボックス]) Like 'Yes'));") True tab1: ID_日付_______チェックボックス _2_2009/02/02_Yes _3_2009/03/03_Noo と、失敗。 ? CnnExecute("DELETE FROM tab1 WHERE ([tab1].[日付] Between #2009/01/01# And #2009/02/02#) AND ((([tab1].[チェックボックス]) = True));") True tab1: ID_日付_______チェックボックス _3_2009/03/03_Noo で、成功。 と、チェックボックスをLike文でテストするのはミスです。 が、質問のエラーはテーブル名と列名が間違っていなければ出ないと思います。 まずは、実際のコードを示されたらどうでしょう。 まさか、[テーブル名]としているんではないでしょうから・・・。

mmac
質問者

お礼

>まさか、[テーブル名]としているんではないでしょうから・・・。 実際は[メインT]で恥ずかしながら過去に[テーブル名]にしたこともありました・・。 確かに実際のコードの方が間違いを把握しやすいですね^^; 次回からは実際のコードで質問します。 >チェックボックスをLike文でテストするのはミスです。 問題解決できました。有り難う御座います。

関連するQ&A