Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Gunakan kueri gaya SQL di Excel menggunakan VBA

Butuh sebagian besar hari, tetapi saya telah menemukan ini. Ini kodenya:

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

Agar ini berfungsi di buku kerja Anda sendiri, Anda harus mengubah Data Source path ke nama file yang Anda gunakan.

[Sheet1$] dalam kueri adalah nama lembar yang Anda pilih (tinggalkan di $ ).

Worksheets(2) adalah nomor lembar tempat Anda membuat tabel dinamis.

Selain itu, Anda harus mengaktifkan salah satu Microsoft Active X Data Objects perpustakaan dengan membuka Tools>References di editor VBA di 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. SQL:Biner ke Alamat IP

  2. Mengidentifikasi hubungan - banyak ke banyak

  3. PDO gagal dengan terlalu banyak catatan, kueri buffer

  4. Akses MySQL MAMP dari Terminal

  5. Bagaimana cara memperbarui kaskade di MySQL?