- 帖子
- 79
- 主題
- 2
- 精華
- 0
- 積分
- 193
- 點名
- 0
- 作業系統
- Winwos 7 64 bits
- 軟體版本
- Excel 2003/2007
- 閱讀權限
- 20
- 性別
- 男
- 來自
- TAIPEI
- 註冊時間
- 2010-8-25
- 最後登錄
- 2019-9-20
|
回復 3# jonn0510
資料龐大可以考慮 SQL 的做法
記得
1. 設定引用項目 Microsoft ActiveX Data Objects 2.8 Library
2. Sheet1的B2:H2 空白的補上欄位名稱...- Sub test()
- '建立ADODB Connection物件變數
- Dim cn As ADODB.Connection
- Set cn = New ADODB.Connection
-
- '建立ADODB Recordset物件變數
- Dim rs As ADODB.Recordset
- Set rs = New ADODB.Recordset
-
- '建立資料庫連線
- With cn
- .Provider = "MSDASQL"
- .ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};" & _
- "DBQ=" & ThisWorkbook.FullName & ";"
- .Open
- End With
-
- 'SQL字串
- mySQL = "Select * FROM [Sheet1$B2:H25] WHERE [主]=[副]"
-
- '解決無法釋放記憶體的BUG
- ThisWorkbook.ChangeFileAccess xlReadOnly
- Set rs = cn.Execute(mySQL)
- ThisWorkbook.ChangeFileAccess xlReadWrite
-
- '將結果COPY到指定位置
- Sheets("Sheet1").Range("M12").CopyFromRecordset rs
- End Sub
複製代碼 |
|