プロが教えるわが家の防犯対策術!

Access2000のVBAにより、フォームに配置したコマンドボタンを押すことで、テーブルの全レコードを一度に削除したいのですが、どの様にすればよいのですか?
構文で教えて頂けると助かります。とても困っています。よろしくお願いします。

A 回答 (2件)

こんにちは。



え~っと単純に書くと
コマンドボタンの「クリック時」に「イベントプロシージャ」として
以下の構文を記述します。
--------------------------------------------------------------
DoCmd.Echo False
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE FROM テーブル名"
DoCmd.Echo True
DoCmd.SetWarnings True
--------------------------------------------------------------
それだけです。
あっ、ふっと思ったのですが「全テーブルの全レコード」じゃぁない
ですよね?「特定のテーブルの全レコード」ですよね?

ではでは・・・
    • good
    • 0
この回答へのお礼

無事解決することができました。ありがとうございました。

お礼日時:2002/05/12 15:23

こんにちは。

maruru01です。
一応、ADOのDeleteメソッドによる削除を紹介します。
やはり、コマンドボタンのクリックイベントに以下のように書きます。

Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset

Set cn = CurrentProject.Connection
Set rs = New ADODB.Recordset
rs.Open "テーブル名", cn, adOpenKeyset, adLockOptimistic

Do Until rs.EOF
  rs.Delete
  rs.MoveNext
Loop

rs.Close: Set rs = Nothing
cn.Close: Set cn = Nothing

このように書くといろいろ処理を織り交ぜたり、応用がききますが、単に全削除するだけなら、No.1の人のやり方の方が簡単でしょう。
では。
    • good
    • 0
この回答へのお礼

レコードセットの最後までを消去するということですね。
参考になりました。別の機会に利用させていただきます。ありがとうございました。

お礼日時:2002/05/12 15:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!