Excel シートに新規データを追加する
Sub 新規データ追加()
Dim myCon As New ADODB.Connection, myRS As New ADODB.Recordset, FileName As String
Dim myCriArray(2) As String, i As Integer
FileName = ThisWorkbook.Path & "\xls\DataBook.xls"
myCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;" & _
"Data Source=" & FileName
'名前つき範囲「社員」をレコードごとの排他的ロックで開く
myRS.Open "[社員]", myCon, adOpenStatic, adLockPessimistic
'新規レコード追加
myRS.AddNew
myRS!社員ID = "050"
myRS!氏名 = "安藤 夏美"
myRS!フリガナ = "アンドウ ナツミ"
myRS!年齢 = "22"
myRS!所属 = "営業2課"
'変更を保存
myRS.Update
myRS.Close: Set myRS = Nothing
myCon.Close: Set myCon = Nothing
End Sub
名前つき範囲「社員」
実行結果
新規レコードには既存レコードの書式が適用される。
ただし、対象ブックを開いたまま AddNew メソッドを実行した場合には、書式は反映されない。
名前付き範囲は自動更新される。


名前付き範囲の下のセルにすでに何か入力されていると、新規レコードを追加できないのでエラーとなる。
名前付き範囲の下のセルにデータが入力されている
エラーメッセージ

