Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Menyoal Pangkalan Data SQL Secara Terus daripada Kod VBA Excel Saya?

Bagaimanakah Saya Boleh Menyoal Pangkalan Data SQL Secara Terus daripada Kod VBA Excel Saya?

Barbara Streisand
Lepaskan: 2024-12-25 02:57:09
asal
588 orang telah melayarinya

How Can I Query a SQL Database Directly from My Excel VBA Code?

Menyiasat SQL daripada VBA dalam Excel

Menggunakan VBA dalam Excel, anda boleh melanjutkan fungsi hamparan anda dengan berinteraksi secara langsung dengan pangkalan data SQL. Ini membolehkan anda melaksanakan pertanyaan SQL, mendapatkan semula hasil dan menyepadukannya ke dalam buku kerja Excel anda.

Pertimbangkan subrutin VBA berikut, yang bersambung ke contoh SQL Server tertentu dan melaksanakan pertanyaan SQL:

Sub ConnectSqlServer()

    Dim conn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim sConnString As String

    ' Adjust according to your environment
    sConnString = "Provider=SQLOLEDB;Data Source=INSTANCE\SQLEXPRESS;" & _
                  "Initial Catalog=MyDatabaseName;" & _
                  "Integrated Security=SSPI;"

    ' Create connection and recordset objects
    Set conn = New ADODB.Connection
    Set rs = New ADODB.Recordset

    ' Open connection and execute query
    conn.Open sConnString
    Set rs = conn.Execute("SELECT * FROM Table1;")

    ' Check for data
    If Not rs.EOF Then
        ' Transfer results to Excel sheet
        Sheets(1).Range("A1").CopyFromRecordset rs
        ' Close recordset
        rs.Close
    Else
        MsgBox "Error: No records returned.", vbCritical
    End If

    ' Clean up
    If CBool(conn.State And adStateOpen) Then conn.Close
    Set conn = Nothing
    Set rs = Nothing

End Sub
Salin selepas log masuk

Untuk menggunakan subrutin ini, ubah suai yang berikut bahagian:

  • Sumber Data: Gantikan "INSTANCESQLEXPRESS" dengan nama instance SQL Server anda.
  • Katalog Permulaan: Gantikan " MyDatabaseName" dengan nama pangkalan data yang anda ingin sambungkan kepada.
  • Keselamatan Bersepadu: Laraskan kepada "True" jika menggunakan pengesahan Windows atau "False" jika menggunakan pengesahan SQL Server. Dalam kes kedua, gantikan "Keselamatan Bersepadu=SSPI;" dengan "ID Pengguna=[nama pengguna];Kata Laluan=[kata laluan];".

Setelah diubah suai, jalankan subrutin VBA untuk mewujudkan sambungan, laksanakan pertanyaan SQL yang dinyatakan dalam pernyataan "Laksanakan", dan isikan keputusan pada helaian Excel yang ditentukan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyoal Pangkalan Data SQL Secara Terus daripada Kod VBA Excel Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan