Microsoft Access Club >VBAのTips解説 >このページ >次頁 < 前項  サイト内検索
 

ADOを用いてSQLやアクションクエリーを実行する方法 : VBAのTips解説



Executeメソッド

Executeメソッドとは、開いているデータベースでアクションクエリーを実行するメソッドです。よって、レコードセットを返しません。アクションクエリー以外を実行するとエラーが発生します。このメソッドはDAO、ADOともに利用できますが、ADOで 使用する場合は、CommandTextプロパティで事前にアクションクエリーやSQLステートメントを指定する必要があります。

  • 書式
object.Execute recordsaffected, parameters, options
  • 引数
引数 意味 指定
object クエリーを実行するDatabaseオブジェクト変数を指定します 省略不可
recordsaffected プロバイダが返す実行操作によって作用を受けたレコードの数です。長整数型の変数で受け取ります 省略可
parameters パラメータ値をバリアント型の配列で指定します。出力パラメータをこの引数で渡しても、正しい値は返されません 省略可
options プロバイダに対して引数 CommandText のタイプを指定します

省略可。
省略した場合は、定数 adCmdUnknown が既定値になります

引数の設定値

  • 引数options
意味
adCmdText (1) CommandTextをテキスト、またはストアドプロシージャ呼び出しの定義として評価します
adCmdTable (2) CommandTextをテーブル名として評価します
adCmdStoredProc (4) CommandTextをストアドプロシージャとして評価します
adCmdUnknown (8) 既定値です。
CommandTextのコマンドタイプが不明であることを表します。

関連項目

  1. Connectionメソッド(ADO)
  2. Excuteメソッド(DAO)

事例 ) ADOを用いて"株式会社"の文字を持つレコードを削除する

ADOを用いて"株式会社"の文字を持つレコードを削除します。

  1. テーブルを作成します。
  2. ID、取引先フィールドを作成します。
  3. 連結フォームを作成します。
  4. ID、取引先テキストボックスを作成します。
  5. 実行するコマンドボタンを作成します。

コマンドボタンクリック時イベントプロシージャの作成

コマンドボタンクリック時イベントプロシージャを以下のように作成します。

Private Sub 実行_Click()

   On Error GoTo エラー

   Dim cn As New ADODB.Connection
   Dim rs As New ADODB.Recordset
   Dim strTbl As String
   Dim strMoji As String
   Dim varRet As Variant

   Set cn = CurrentProject.Connection
   strTbl = "納入先マスター"
   strMoji = "株式会社"
   rs.Open strTbl, cn, adOpenKeyset, adLockOptimistic

   Do Until rs.EOF
      If InStr(rs!取引先, strMoji) <> 0 Then '--- A
         rs.Delete
      End If
      rs.MoveNext
   Loop

   Me.Requery '--- B

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

   Exit Sub

エラー:

   If Err.Number = -2147217900 Then
      MsgBox "該当するテーブルがありません。"
   Else
      MsgBox Err.Number & " : " & Err.Description
   End If

End Sub
解説
  1. InStr関数は指定した文字が見つからなかった時、0を返します。
  2. 削除したレコードをフォーム上から排除します。

動作確認

  1. フォームをビューモードで開きます。
  2. [実行]ボタンをクリックします。

  1. "株式会社"の文字を持つレコードが全て削除されます。


 

ページの先頭へ 前ページへ戻る


ADOを用いてSQLやアクションクエリーを実行する方法 : VBAのTips解説


 

-Microsoft Access Club-

アダルト・ゲーム配信可能なPLESKパネル付属の専用・共有レンタルサーバーを提供しています。
アダルトやゲーム配信が可能です。
全専用/共有レンタルサーバーにPLESKパネルをインストール済み。