Part 1:目标
- 前文中,我们已经获取了一个工作表(学生信息表)和4个字段(ID,姓名,学号,性别),并输入了两行记录
- 今天在原有字段的基础上增加籍贯,语文成绩两个新的字段
- 并对原张三的记录做一些修改:修改学号信息,增加籍贯及语文成绩信息
- 原记录:张三,11,男
- 修改后:张三,1,男,广东省,85
结果如下
Part 2:代码
Sub test() Dim cnn As New ADODB.Connection '连接 Dim rs As New ADODB.Recordset Dim SQL As String Dim tblName Dim dbAddr dbAddr = ThisWorkbook.Path & "学生信息.accdb" tblName = "学生信息表" '连接数据库 With cnn .Provider = "Microsoft.ACE.OLEDB.12.0" .Open "Data Source=" & dbAddr End With field1 = "籍贯 text(10)" field2 = "语文成绩 single" '增加字段 SQL = "ALTER TABLE " & tblName & " ADD " & field1 & "," & field2 Set rs = cnn.Execute(SQL) '补充记录 stuName = "张三" jiGuan = "广东省" yuWenNote = 85 newXueHao = 1 SQL = "Update " & tblName & " SET " _ & "籍贯=" & Chr(39) & jiGuan & Chr(39) _ & ",语文成绩=" & yuWenNote _ & ",学号=" & newXueHao _ & " where 姓名=" & Chr(39) & stuName & Chr(39) Set rs = cnn.Execute(SQL) cnn.Close Set rs = Nothing Set cnn = NothingEnd Sub
Part 3:部分代码解读
- Update 工作表名 set 字段1=X1,字段2=X2 where 字段4=X4
- 中文释义:修改(更新)工作表,字段4=X4所在记录(行)中,字段1的值改为=X1,字段2改为X2
- 即:通过某一字段的值,定位到某一记录(行),修改这一记录(行)中其它字段的值