ExcelからAccessデータベースのテーブルに情報を追加する
Kappo
Excelで入力や更新されたAccessのデータベース(主にテーブルデータ)に追加する方法をこの部屋に掲載していますよ!!
作業をしているといつまでも同じデータだけで行う事ってないですよね。
更新処理は必須だから、この部屋を方法を使ってね!!
Accessでテーブルを作成する
※テーブルの作成は 「VBA:Accessデータベースの情報を取得ー別部屋」を参照してください
プログラム(例)
データベース(Access)の準備が出来たので取得のプログラムを記述します
「ADO」が使えるように参照設定で追加する
※追加の方法は 「参照ライブラリを追加する(参照設定)-別部屋」を参照してください
コマンドボタンがクリックされた時に実行されるプログラム
「CommandButton3」
※「VBA:Accessデータベースの情報を取得」で作成したプログラムの接続後の処理プログラムの箇所を変更します
tblDataに情報を追加する
▼プログラム▼
Dim cnn As ADODB.Connection
Dim rec As ADODB.Recordset
Dim mySQL As String
Dim mdbPath As String
mdbPath = "C:\Sample\Sample.accdb" '接続するAccessファイルのフルパス
Set cnn = New ADODB.Connection
'DB接続文字列
cnn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.16.0;" _
& "Data Source=" & mdbPath & ";"
cnn.Open '接続の確立
'------------------------------
’ ※接続後の処理プログラム
Set rec = New ADODB.Recordset
mySQL = "SELECT * FROM tblData"
Call rec.Open(mySQL, cnn, adOpenDynamic, adOpenDynamic) '書き込み可能で開きます
' ↑CursorTypeとOptionの組合せはおまじない的にいつも同じ 笑
rec.AddNew '新しいレコード追加
rec("Data1").Value = "え" 'フィルード名を指定する
'下記の記述も同じ
'rec!Data1.Value 'これもフィールド名を指定する
'rec.Fileds(0).Value 'これはフィールド位置(0から始まる)を指定する
rec("Data2").Value = "d"
rec("Data3").Value = "40"
rec("Data4").Value = "1"
rec.UpDate '追加したレコードをアップデートする
'※UpDateすることで追加情報が確定される
rec.Close
'------------------------------
'後片付け
Set rec = Nothing
'------------------------------
cnn.Close()
'------------------------------
'後片付け
Set cnn = Nothing
プログラムの実行
テーブルの最後に情報が追加されてました
Amazon | 本, ファッション, 家電から食品まで | アマゾン
Amazon.co.jp 公式サイト。アマゾンで本, 日用品, ファッション, 食品, ベビー用品, カー用品ほか一億種の商品をいつでもお安く。通常配送無料(一部を除く)
コメント