Wie die Verbindung von excel mit dem gesicherten access-Datenbank in vba?
Ich habe eine access-Datenbank mit Passwort ("1234"), und ich will schließen einer excel-Datei in der vba-Daten zu extrahieren.
Wenn ich den Schutz der access-Datei, die ich kann, verbinden sich mit so etwas
path = ThisWorkbook.Path & "\KCBD.accdb"
cs = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & path & ";Persist Security Info=False;"
Set Cn = New ADODB.Connection
Cn.Open cs
und es funktioniert, aber wenn ich den Schutz der Datei mit einem Kennwort, ich weiß nicht, wie zu tun, die Verbindung. Ich habe versucht, diese
Ruta = ThisWorkbook.Path & "\KCBD.accdb"
cs = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Ruta & ";Persist Security Info=False;" & "Password=1234;"
Set Cn = New ADODB.Connection
Cn.Open cs
aber in der "Cn.Öffnen cs-Zeile" dieser Fehler macht mich halt: Laufzeitfehler '-2147217843 (80040e4d)'
Können Sie mir helfen? Vielen Dank.
- Benutzername fehlt?
- Es gibt keine Usernamen, ich habe locked die Datenbank öffnen im exklusiven Modus und "mit Kennwort Verschlüsseln", " im Datei-Menü Zugreifen, ein Passwort eingeben und sonst nichts.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich die Antwort in dieser Frage: Excel, ADODB VBA-error-msg "Kein Gültiges Passwort"
In Access 2010 das Verschlüsselungsverfahren geändert für Datenbank-Passwörter, und der ADO-provider ist "Jet OLEDB:Database Password" keyword scheint nicht zu funktionieren mit der neuen Methode. Hier hatte ich um das Passwort zu entfernen, gehen Sie in das Access->Datei->Optionen->Client-Einstellungen->Erweitert und aktivieren Sie "use legacy encryption", und erstellen Sie anschließend das Kennwort.
Ich weiß nicht, ob es irgendwelche neuen OLE DB-connection string keywords für den ACE-Anbieter, oder ob dieses problem auch Auftritt, wenn mit ADO.NET
Dank bibadia Benutzer
Für gesichert oder Passwort-geschützten Access-Datenbank verwenden Sie die Eigenschaft "Datenbank-Passwort"
Zum Beispiel:
hier " - App.Pfad" ist für die, wo Ihre Anwendung platziert ist, können Sie statt Access-Datenbank, jedoch wenn es ist ein Standort angegeben, dann ersetzen Sie die App.Weg mit ihm in Ihrem format
e.g:
wenn das wil nicht funktionieren, dann versuchen Sie bitte einen anderen Jet-provider