这段vba是什么意思?导入数据的,这段vba是什么意思?导入数据的,这段vba是什么意思?导入数据的,Sub Macro1() Macro1 Macro 宏由 shenxin 录制,时间: 2007-12-12 Dim Conn1 As New ADODB.Connection Dim Rs As New ADODB.Recordset Set Conn1 = CreateObject(ADODB.Connection) Conn1.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\data\FundInfo.MDB Conn1.Open Set Rs = CreateObject(ADODB.Recordset) Rs.Open Select * from gzb, Conn1, adOpenStatic Do While (Notrs.EOF) 循环显示指定条数的记录 MsgBox Rs(Pkg_Cd) Rs.MoveNext 指向下一条记录 If Rs.EOF Then Exit Do 已经到底最后一条记录则跳出 Loop sheet_i = 1 按照工作表的排列顺序,并不是名字顺序 cell_col = 1 插入记录的列 For nIndex = 1 To Rs.RecordCount cell_row = nIndex 插入记录的行 Sheets(sheet_i).Cells(cell_row, 1).Value = Rs.Fields(FKmbm) Sheets(sheet_i).Cells(cell_row, 2).Value = Rs.Fields(FKmmc) Sheets(sheet_i).Cells(cell_row, 3).Value = Rs.Fields(FHqjg) Sheets(sheet_i).Cells(cell_row, 4).Value = Rs.Fields(FHqbz) Sheets(sheet_i).Cells(cell_row, 5).Value = Rs.Fields(FZqsl) Sheets(sheet_i).Cells(cell_row, 6).Value = Rs.Fields(FZqcb) Sheets(sheet_i).Cells(cell_row, 7).Value = Rs.Fields(FZqsz) Sheets(sheet_i).Cells(cell_row, 8).Value = Rs.Fields(FGz_zz) Rs.MoveNext Next nIndex MsgBox Data initialize successful. Rs.Close Conn1.Close End Sub 有谁能详细解释下这段vba
股票入门 我的第一次 你在做什么 往期内容 休闲牧场预告 设猫扑虎为首页|收藏猫扑虎
这段vba是什么意思?导入数据的
来源:网络收集 作者:解语人 时间:2008-4-28 12:44:38

Sub Macro1() Macro1 Macro 宏由 shenxin 录制,时间: 2007-12-12 Dim Conn1 As New ADODB.Connection Dim Rs As New ADODB.Recordset Set Conn1 = CreateObject(ADODB.Connection) Conn1.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\data\FundInfo.MDB Conn1.Open Set Rs = CreateObject(ADODB.Recordset) Rs.Open Select * from gzb, Conn1, adOpenStatic Do While (Notrs.EOF) 循环显示指定条数的记录 MsgBox Rs(Pkg_Cd) Rs.MoveNext 指向下一条记录 If Rs.EOF Then Exit Do 已经到底最后一条记录则跳出 Loop sheet_i = 1 按照工作表的排列顺序,并不是名字顺序 cell_col = 1 插入记录的列 For nIndex = 1 To Rs.RecordCount cell_row = nIndex 插入记录的行 Sheets(sheet_i).Cells(cell_row, 1).Value = Rs.Fields(FKmbm) Sheets(sheet_i).Cells(cell_row, 2).Value = Rs.Fields(FKmmc) Sheets(sheet_i).Cells(cell_row, 3).Value = Rs.Fields(FHqjg) Sheets(sheet_i).Cells(cell_row, 4).Value = Rs.Fields(FHqbz) Sheets(sheet_i).Cells(cell_row, 5).Value = Rs.Fields(FZqsl) Sheets(sheet_i).Cells(cell_row, 6).Value = Rs.Fields(FZqcb) Sheets(sheet_i).Cells(cell_row, 7).Value = Rs.Fields(FZqsz) Sheets(sheet_i).Cells(cell_row, 8).Value = Rs.Fields(FGz_zz) Rs.MoveNext Next nIndex MsgBox Data initialize successful. Rs.Close Conn1.Close End Sub 有谁能详细解释下这段vba
看看解释得是否清楚?
Sub Macro1()
'定义ADO的Connection和Recordset对象,先要在引用ADO库
Dim Conn1 As New ADODB.Connection
Dim Rs As New ADODB.Recordset
'创建Connection对象
Set Conn1 = CreateObject("ADODB.Connection")
'设置Connection对象的连接字符串,连接到指定的Access数据库文件
Conn1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\data\FundInfo.MDB"
'打开连接
Conn1.Open
'创建Recordset对象
Set Rs = CreateObject("ADODB.Recordset")
'打开数据库中表gzb的所有记录
Rs.Open "Select * from gzb", Conn1, adOpenStatic


' Do While (Notrs.EOF) '循环显示指定条数的记录
' MsgBox Rs("Pkg_Cd")
' Rs.MoveNext '指向下一条记录
' If Rs.EOF Then Exit Do '已经到底最后一条记录则跳出
' Loop

sheet_i = 1 '按照工作表的排列顺序,并不是名字顺序
cell_col = 1 '插入记录的列

'循环返回Recordset对象的所有记录,RecordCount表示记录行数
For nIndex = 1 To Rs.RecordCount
cell_row = nIndex '插入记录的行
'分别在工作表中第1列到8列显示数据库表中的对应的列
Sheets(sheet_i).Cells(cell_row, 1).Value = Rs.Fields("FKmbm")
Sheets(sheet_i).Cells(cell_row, 2).Value = Rs.Fields("FKmmc")
Sheets(sheet_i).Cells(cell_row, 3).Value = Rs.Fields("FHqjg")
Sheets(sheet_i).Cells(cell_row, 4).Value = Rs.Fields("FHqbz")
Sheets(sheet_i).Cells(cell_row, 5).Value = Rs.Fields("FZqsl")
Sheets(sheet_i).Cells(cell_row, 6).Value = Rs.Fields("FZqcb")
Sheets(sheet_i).Cells(cell_row, 7).Value = Rs.Fields("FZqsz")
Sheets(sheet_i).Cells(cell_row, 8).Value = Rs.Fields("FGz_zz")
'移动到下一个记录
Rs.MoveNext
Next nIndex

MsgBox "Data initialize successful."
'关闭Recordset和Connection对象
Rs.Close
Conn1.Close
End Sub

更多友情链接>>>