首先說明以下。
第一: 下面的 “ _' 也就是 空格下劃線 在VBA中表示換行的意思;& 表示鏈接連個(gè)字符串的操作,注意 & 的前后是否需要空格
第二: 如果鏈接服務(wù)器,服務(wù)器名稱,賬號(hào),密碼,或者SQL語句有問題,都會(huì)報(bào)錯(cuò)說自動(dòng)化錯(cuò)誤。
第三: 如果剛開始運(yùn)行程序就顯示”未定義對(duì)象錯(cuò)誤“,那么你就需要 VBA界面的”工程--引用“中選擇”Micsoft ActiveX data Objects 2.6“ 點(diǎn)擊確定?! ?/pre>
1 Sub 下載數(shù)據(jù)() 2 3 Dim lastRow As Long, lastColumn As Long 4 lastRow = ActiveSheet.UsedRange.Rows.Count 5 lastColumn = ActiveSheet.UsedRange.Columns.Count 6 7 'MsgBox Split(Range('A1')(1, lastColumn).Address, '$')(1) 8 9 If lastRow > 2 Then 10 Range('a3:BL999') = '' '僅僅清空內(nèi)容 11 Range('bo3:bo999') = '' 'Range('A2:I65536').ClearContents 也可以清楚內(nèi)容 12 ' ActiveSheet.Rows('3:' & lastRow).Delete 清楚了內(nèi)容包括格式 13 End If 14 'MsgBox (Cells(10, 1).Value) 15 Dim conn As Object 16 '定義變量 17 Set conn = CreateObject('ADODB.Connection') '建立ADODB連接對(duì)象 18 conn.ConnectionString = 'Driver={sql server};' _ 19 & 'server=你的服務(wù)器;' _ 20 & 'uid=;pwd=;' _ 21 & 'database=你的數(shù)據(jù)庫;' _ 22 & 'AutoTranslate=False' 23 conn.Open '打開了和SQL的鏈接 24 mySql = ' SELECT * FROM [dbo].[LEAD] ORDER BY [月],[周]' '寫自己的SQL查詢語句 25 Set rsData = New ADODB.Recordset '定義一個(gè)可以保存sql查詢的對(duì)象集 26 Set rsData = conn.Execute(mySql) 'rsData.Open mySql, conn 可以實(shí)現(xiàn)相同的功能 27 'Worksheets('Sheet1').Range('A3').CopyFromRecordset rsData --一次性寫入從A3開始的sheet1 工作中 28 Range('A3').CopyFromRecordset rsData '寫出到當(dāng)前激活的sheet中從A3開始 29 rsData.Close '養(yǎng)成好習(xí)慣,用完的東西要關(guān)閉哦~~~ 30 Set rsData = Nothing 31 conn.Close 32 Set conn = Nothing 33 End Sub
1 Sub 上傳數(shù)據(jù)() 2 'MsgBox (Cells(10, 1).Value) 3 Dim conn As Object 4 Set conn = CreateObject('ADODB.Connection') '建立ADODB連接對(duì)象 5 6 conn.ConnectionString = 'Driver={sql server};' _ 7 & 'server=你的服務(wù)器;' _ 8 & 'uid=;pwd=;' _ 9 & 'database=你的數(shù)據(jù)庫;' _ 10 & 'AutoTranslate=False' 11 Dim Sql1 As String, Sql2 As String 12 conn.Open '打開了和SQL的鏈接 13 For i = 2 To 30 14 Sql = 'INSERT INTO 表([V1],[V2]) VALUES ('' & Cells(i, 1).Value & '','' & Cells(i, 2).Value & '')' 15 '輸出一條語句至文件 16 conn.Execute (Sql) '執(zhí)行Sql 語句 17 Next 18 19 '養(yǎng)成好習(xí)慣,用完的東西要關(guān)閉哦~~~ 20 conn.Close 21 Set conn = Nothing 22 End Sub
聯(lián)系客服