代码如下:
Sub ADO往Excel中写数据的AddNew方法()
Dim Cn, Rs, arr, i As
Integer
Dim PathStr As String, SQL As
String
Set Cn =
CreateObject("ADODB.Connection")
'创建数据连接对象
Set Rs =
CreateObject("ADODB.Recordset")
'创建记录集对象
PathStr =
ThisWorkbook.FullName
Select Case
Application.Version * 1
'设置连接字符串,根据版本创建连接
Case Is <= 11
strConn =
"Provider=Microsoft.Jet.Oledb.4.0;Extended Properties=excel
8.0;Data source=" & PathStr
Case Is >= 12
strConn =
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & PathStr
& ";Extended Properties=""Excel 12.0;HDR=YES"";"""
End Select
SQL = "Select * From
[Sheet1$]"
Cn.Open strConn
With Rs
.Open SQL, Cn, 1, 3
'
.AddNew
'添加一个新的记录
'方法1:列字段名称法
.Fields("编号") = Range("A" &
Rows.Count).End(xlUp) + 1 '23
'编号
.Fields("商品名称") = "洗衣机"
',商品名称
.Fields("单位") = "台" '单位
.Fields("数量") = 100 ',数量
.Fields("单价") = 2500 ',单价
.Fields("金额") = 250000
'金额
'方法2:列字段索引法(从0开始)
'
.Fields(0) = Range("A" &
Rows.Count).End(xlUp) + 1 '23 '编号
'
.Fields(1) = "洗衣机"
',商品名称
'
.Fields(2) = "台"
'单位
'
.Fields(3) = 100
',数量
'
.Fields(4) = 2500
',单价
'
.Fields(5) = 250000
'金额
.Update
'保存数据
.Close
'关闭记录集
End With
Cn.Close
'关闭数据连接
Set Rs = Nothing: Set Cn =
Nothing
End Sub
|