Apabila cuba mendapatkan semula data daripada pangkalan data SQL ke dalam helaian Excel menggunakan kod VBA, pengguna mungkin menghadapi Ralat Masa Jalan 3704, menunjukkan operasi tidak sah dengan objek tertutup. Ini biasanya berlaku semasa langkah di mana data disalin daripada set rekod ke helaian Excel.
Satu potensi punca ralat ini terletak pada rentetan sambungan. Pastikan rentetan sambungan termasuk parameter Katalog Permulaan, menyatakan nama pangkalan data untuk diakses. Berikut ialah rentetan sambungan yang dikemas kini dengan parameter:
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=MyDatabase;User ID=abc;Password=abc;"
Isu lain mungkin ialah penggunaan lapisan arahan tambahan apabila menentukan arahan SQL. Untuk memudahkan kod dan mengelakkan ralat, anda boleh terus menggunakan rentetan pernyataan SQL seperti berikut:
strSQL = "select * from myTable"
Kemudian, buka set rekod menggunakan rentetan pernyataan SQL sebagai teks arahan:
objMyRecordset.Open strSQL
Dengan menangani isu-isu yang berpotensi ini dan memastikan bahawa rentetan sambungan lengkap dan arahan SQL dilaksanakan dengan betul, anda sepatutnya berjaya mendapatkan data daripada pangkalan data SQL ke dalam helaian Excel anda menggunakan VBA.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Masa Jalan 3704 Apabila Mengakses Pangkalan Data SQL dalam Excel VBA?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!