Heim > Datenbank > MySQL-Tutorial > Wie behebt man den Laufzeitfehler 3704 beim Zugriff auf SQL-Datenbanken in Excel VBA?

Wie behebt man den Laufzeitfehler 3704 beim Zugriff auf SQL-Datenbanken in Excel VBA?

Susan Sarandon
Freigeben: 2025-01-04 08:27:39
Original
275 Leute haben es durchsucht

How to Fix Run-time Error 3704 When Accessing SQL Databases in Excel VBA?

Zugriff auf eine SQL-Datenbank in Excel-VBA: Beheben des Laufzeitfehlers 3704

Beim Zugriff auf Daten aus einer SQL-Datenbank mithilfe von VBA-Code kann beim Versuch ein Fehler auftreten um Daten aus dem Recordset nach Excel zu kopieren. Insbesondere tritt der Fehler „Laufzeitfehler 3704: Vorgang ist nicht zulässig, wenn Objekt geschlossen ist“ auf, wenn das Recordset-Objekt geschlossen wird.

So beheben Sie dieses Problem:

  1. Zugriff auf die Datenbank überprüfen: Stellen Sie sicher, dass über VBA auf die Datenbank zugegriffen werden kann. Stellen Sie sicher, dass die Datenbank ausgeführt wird, die Verbindungszeichenfolge korrekt ist und der Benutzer über die erforderlichen Berechtigungen für den Zugriff auf die Datenbank verfügt.
  2. Anfangskatalog zur Verbindungszeichenfolge hinzufügen:Ändern Sie die Verbindungszeichenfolge, um sie einzuschließen der anfängliche Katalog, der den Datenbanknamen darstellt. Zum Beispiel:
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=MyDatabase;User ID=abc;Password=abc;"
Nach dem Login kopieren
  1. Öffnen Sie das Recordset direkt: Anstatt das ADODB.Command-Objekt zu verwenden, können Sie das Recordset direkt mit der SQL-Anweisung öffnen. Hier ist ein aktualisierter Codeausschnitt:
Const adCmdText As Long = 1
Dim strSQL As String

... // Other code above

' Open Recordset'
Set objMyRecordset.ActiveConnection = objMyConn
strSQL = "select * from myTable"
objMyRecordset.Open strSQL            

... // Rest of the code below
Nach dem Login kopieren

Durch diese Anpassungen sollten Sie in der Lage sein, Daten mithilfe von VBA erfolgreich aus der SQL-Datenbank nach Excel zu kopieren, ohne dass der Laufzeitfehler 3704 auftritt.

Das obige ist der detaillierte Inhalt vonWie behebt man den Laufzeitfehler 3704 beim Zugriff auf SQL-Datenbanken in Excel VBA?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage