AccessのVBAでSQLのDELETEを使い日付型フィールドの条件に合うデータを削除する

条件の日付を#(シャープ)で囲み設定

DELETE FROM T_顧客 WHERE 更新日= #2007/10/11#
上のように条件の文字列を#(シャープ)で囲みます。
この場合、更新日フィールドが2007年10月11日のレコードのみ削除されます。



BackHome BackSQL Tips

サンプルソフト
「削除する誕生日」に削除したい顧客の誕生日(日付)を入力し、「削除」ボタンをクリックすると、該当する顧客のレコードを削除します。
入力した「誕生日」が見つからない場合は、エラー等も出ず何も起こりません。
顧客の誕生日

[実行前のT_顧客管理テーブル]
顧客 削除前

[実行後のT_顧客管理テーブル]
IDが14のデータがなくなっています。
顧客 削除後

[コード]
Option Compare Database

Private Sub コマンド8_Click()
    Dim SQL As String
    If IsNull(Me!テキスト1) Then
        MsgBox "削除するコード1を入力してください。"
        Exit Sub
    End If
    SQL = "DELETE FROM T_顧客管理 WHERE 誕生日=#" & Me!テキスト1 & "#"
    CurrentDb.Execute SQL, dbFailOnError
End Sub

サンプルソフトのダウンロード

BackHome BackSQL Tips

Copyright(C) FeedSoft