您好,登錄后才能下訂單哦!
Option Explicit Sub 輸出數(shù)據(jù)表(strSql As String, Work As String) '傳值處理 ''''''''''''''''''''''''''''''''''''''''''' Dim data As New 數(shù)據(jù)庫(kù) Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sht As Worksheet Dim i As Integer Dim Lm As Integer Dim h As Integer Set sht = ThisWorkbook.Worksheets(Work) cn.Open data.SQL數(shù)據(jù)庫(kù) '循環(huán)查詢(xún)到的列名,把列名的數(shù)量定義循環(huán)。 rs.Open strSql, cn '執(zhí)行strSQL所含的SQL命令,結(jié)果保存在rs記錄集對(duì)象中 i = 0 Lm = rs.Fields.Count '列名的數(shù)量定義 While i < Lm sht.Cells(2, i + 1) = rs.Fields(i).Name '列名讀取 i = i + 1 'i加1,準(zhǔn)備把下一記錄相關(guān)字段的值保存到工作表的下一行 Wend rs.Close '關(guān)閉記錄集 ''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''' '循環(huán)數(shù)據(jù)表 rs.Open strSql, cn '執(zhí)行strSQL所含的SQL命令,結(jié)果保存在rs記錄集對(duì)象中 i = 3 Do While Not rs.EOF h = 1 While h - 1 < Lm '當(dāng)數(shù)據(jù)指針未移到記錄集末尾時(shí),循環(huán)下列操作 sht.Cells(i, h) = rs(rs.Fields(h - 1).Name) '把當(dāng)前字段2的值保存到sheet1工作表的第i行第2列 h = h + 1 Wend rs.MoveNext '把指針移向下一條記錄 i = i + 1 Loop rs.Close '關(guān)閉記錄集
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。