Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Sử dụng truy vấn kiểu SQL trong Excel bằng VBA

Tôi đã mất gần như cả ngày nhưng tôi đã tìm ra điều này. Đây là mã:

Sub Excel_QueryTable()

Sheet2.Cells.ClearContents

Dim oCn As ADODB.Connection
Dim oRS As ADODB.Recordset
Dim ConnString As String
Dim SQL As String

Dim qt As QueryTable

ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\t.xlsm;Extended Properties=Excel 8.0;Persist Security Info=False"
Set oCn = New ADODB.Connection
oCn.ConnectionString = ConnString
oCn.Open

SQL = "Select * from [Sheet1$] WHERE type='man'"

Set oRS = New ADODB.Recordset
oRS.Source = SQL
oRS.ActiveConnection = oCn
oRS.Open

Set qt = Worksheets(2).QueryTables.Add(Connection:=oRS, _
Destination:=Range("A1"))

qt.Refresh

If oRS.State <> adStateClosed Then
oRS.Close
End If

If Not oRS Is Nothing Then Set oRS = Nothing
If Not oCn Is Nothing Then Set oCn = Nothing

End Sub

Để điều này hoạt động trên sổ làm việc của riêng bạn, bạn cần thay đổi Data Source đường dẫn đến tên của tệp bạn đang sử dụng.

[Sheet1$] trong truy vấn là tên của trang tính bạn đang chọn (để lại trong $ ).

Worksheets(2) là số trang mà bạn đang tạo bảng động.

Ngoài ra, bạn sẽ cần kích hoạt một trong các Microsoft Active X Data Objects thư viện bằng cách đi tới Tools>References trong trình soạn thảo VBA trong excel.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để thay đổi múi giờ MySQL Server?

  2. Làm thế nào để sửa chữa bảng xampp 'mysql.user' bị hỏng?

  3. Tạo kết nối MySQL trong Playframework với slick

  4. Cập nhật cột dấu thời gian trong Ứng dụng hoặc Cơ sở dữ liệu?

  5. Làm cách nào để tạo một trang HTML động bằng PHP?