データを追加する:ExcelからADOでAccessデータベースを使う

ADOでAccessデータベースにデータを追加するには、それに対応する方法でレコードセットを開く必要があります。

今回下の構文で実行しました。
rs.Open "T_売上", db, adOpenDynamic, adLockOptimistic

adLockOptimisticとはRecordset内ですべての動作ができ、Updateメソッドで保存する場合のみ、そのレコードをロックするという意味です。

追加するには下記の順になります。
1)AddNewメソッドを実行
2)フィールドにデータをセット
3)Updateメソッドを実行



Homeに戻る > Excel データベースのTipsへ

ADOを使用したテータ追加の実行画面

新規に作成した、売上管理テーブルを使用しました。

Accessで売上テーブルを開いた画面です。
レコードは1件も登録されていません。
空のテーブル

Excelで追加実行後の、テーブルです。
「日付」「会社名」「商品名」「数量」「金額」「備考」にそれぞれ登録されています。
データが追加されたテーブル

ADOを使用したコード

Option Explicit

Private Sub CommandButton1_Click()
    Dim db As ADODB.Connection
    Dim rs As ADODB.Recordset
    
    '売上管理のACCDBファイルに接続します
    Set db = New ADODB.Connection
    db.Provider = "Microsoft.Ace.OLEDB.12.0"
    db.Open "C:\MyHP\excel2007\Tips\売上管理.accdb"

    'レコードセットを開きます
    Set rs = New ADODB.Recordset
    '売上テーブルを開きます
    rs.Open "T_売上", db, adOpenDynamic, adLockOptimistic
    
    '追加開始
    rs.AddNew
    rs("日付") = "2010/06/28"
    rs("会社名") = "株式会社早急運送"
    rs("商品名") = "スチール棚"
    rs("数量") = 500
    rs("金額") = 4950000
    rs("備考") = "担当 大島"
    '保存
    rs.Update
    
    '閉じる
    rs.Close
    db.Close
    '終了処理
    Set rs = Nothing
    Set db = Nothing
End Sub


Homeに戻る > Excel データベースのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved