#118 | すべてのテーブルを空にする例 | VBA | |
次に紹介するコードは、とにかくすべてのテーブルを空にするためのサンプルプロシージャです。データベースの開発あるいはテスト中に使っていたテストデータをすべて削除し、初期状態に戻したいときなどに使えると思います。 ここでは、「For Each tdf In dbs.TableDefs」でデータベース内のすべてのテーブルを列挙します。そして、Attributesプロパティを調べ、システムテーブルと隠しテーブルについてはその対象から除外するようにしています。 さらに、今回は、1つの例として、"mtbl"という4文字で始まる名前のテーブルも除外するようにしています。すべてのテーブルではなく、ある条件に合うテーブルだけを空にしたい場合には、このような方法で選別するとよいでしょう。 そして最後に、SQLステートメントの"DELETE"文を発行して、そのテーブルのすべてのレコードを削除します。 Public Sub EmptyAllTable()
Dim dbs As Database Dim tdf As TableDef Set dbs = CurrentDb For Each tdf In dbs.TableDefs With tdf If ((.Attributes And dbSystemObject) Or _ (.Attributes And dbHiddenObject)) = 0 Then If Left$(.Name, 4) <> "mtbl" Then dbs.Execute "DELETE * FROM " & .Name End If End If End With Next tdf dbs.Close End Sub |
|||
|
Copyright © T'sWare All rights reserved |