Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1892to1896
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

mit Excel/VBA auf Access zugreifen

mit Excel/VBA auf Access zugreifen
13.08.2022 16:27:52
Marc
Hallo,
ich versuche mit EXcel und VBA auf eine Datenbank von Access zu zu greifen.
Die Datenbank ist mit einem Passwort verschlüsselt.
(ohne Passwort Verschlüsselung funktioniert der Zugriff einwandfrei)
folgendes habe ich auf ein Button gelegt in Excel :

Set DBcon = New ADODB.Connection
With DBcon
.Provider = "Microsoft.ACE.OLEDB.12.0"
.Properties("Jet OLEDB:Database Password") = pass
.Mode = adModeReadWrite
.Open Pfad & DB
End With
Wenn ich dann starte und den Button drücke kommt folgender Fehler:
Systemfehler &H80004005 ( - 2147467259) unbekannter Fehler
oder als anderer Versuch:

DBcon.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Pfad & DB & ";Jet OLEDB:Database Password=" & pass
Hier kommt dann kein zulässiges Passwort..
Wie gesagt entferne ich das Passwort aus Access funktioniert es ..

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit Excel/VBA auf Access zugreifen
13.08.2022 16:36:27
JoWE
Hallo,
ich habe in meiner Codesammlung hier ein Codebeispiel aus 2007 vom Autor Peter Feustel:

Option Explicit
'   Achtung der Verweis auf: Microsoft ActiveX Data Objects 2.0 Library
'   oder eine höhere Version (2.1, 2.5) muss aktiviert sein.
'   Hier soll eine Access-Datenbank, die passwortgeschützt ist gelesen werden.
'   Achtung: Die Namen in Access dürfen keinen Bindestrich, sondern immer
'            den Unterstrich als Text-Trennung enthalten - z. B. PSTLZ_Straße.
Sub DBZugriff()
Dim Connect    As Connection  ' die Verbindung zu Access
Dim RecSet     As Recordset   ' der Access RecordSet
Dim SQLString  As String      ' der SQL Befehl
Dim Ziel       As Worksheet   ' Excel-Tabellenblatt
Dim Zeile      As Integer     ' Zeile
Dim Spalte     As Integer     ' Spalte
Dim DBPfad     As String      ' Pfad der Access-Anwendung
Dim DBDatei    As String      ' Name der Access-Datei bzw. DB
Dim DBTab      As String      ' Name der Access-Tabelle
Dim Suchbegr   As String      ' String als Suchbegriff
DBPfad = "C:\Dokumente und Einstellungen\Administrator\Eigene Dateien\Access-DBs\"
DBDatei = "SHELL-MIS.mdb"
DBTab = "adressen"
Set Ziel = Worksheets("Tabelle8")   ' Ziel Tabellenblatt in Excel
'  Die Datenbank öffnen
Set Connect = New ADODB.Connection
With Connect  ' für Access 2000 und höhere                     '~~~~~~~~~~~~~~~~
.Provider = "Microsoft.Jet.OLEDB.4.0" + ";Jet OLEDB:Database Password=welcome"
.ConnectionString = "Data Source=" & DBPfad & DBDatei       '~~~~~~~~~~~~~~~~
.Open
End With
'  im SQL-String definieren was geholt werden soll => hier verschiedene Varianten
'    hier alles - die komplette Access-Tabelle
'SQLString = "SELECT Adressen.* FROM Adressen" '  es gibt also Daten !
RecSet.MoveFirst         ' auf dem ersten Datensatz aufsetzen
Else
MsgBox "es konnte nichts selektiert werden => Abbruch.", _
16, "    fehlerhafte Selektion ?"
Exit Sub
End If
Do While RecSet.EOF = False
Zeile = Zeile + 1
For Spalte = 0 To RecSet.Fields.Count - 1
If IsNull(RecSet.Fields.Item(Spalte).Value) = False Then
Ziel.Cells(Zeile, Spalte + 1) = RecSet.Fields.Item(Spalte).Value
Ziel.Rows(Zeile & ":" & Zeile).RowHeight = 13.2
End If
Next Spalte
RecSet.MoveNext
Loop
Cells.EntireColumn.AutoFit
[A1].Select
Application.ScreenUpdating = True
RecSet.Close
Connect.Close
End Sub 
Vielleicht hilft es?
Gruß
Jochen
Anzeige
AW: mit Excel/VBA auf Access zugreifen
13.08.2022 20:27:49
Marc
Hallo für das ausgezeichnete Beispiel.
leider führt sowohl der gesamte Code (oben) sowie auch die Entsprechende Anpassung bei mir zu ähnlichem Ergebnis,
wobei die Fehlermeldungen variieren zwischen
- unzulässiges Kennwort
- unzulässige Kennworteingabe
- unbekannter Fehler
- Fehlerfenster oder Fehler ID
- Datenbanksystem unbekannt..
Ich hatte zusätzlich übrigens zu
- ActiveX Data Objects 6.1 Library
noch
Microsoft Jet and Replication Objects 2.6 Library
als Verweis hinzufügen müssen
AW: mit Excel/VBA auf Access zugreifen
13.08.2022 20:39:58
JoWE
O je, tut mir leid.
War meine erste Idee nach dem Lesen Deiner Frage.
Ich konnte mich dunkel an ein Zugriffsproblem zu einer Access-DB erinnern wo mir damals dieser Code untergekommen war. Ob ich damals allerdings damit zum Ziel gekommen bin, weiß ich nicht mehr.
Werde mal in den alten Unterlagen kramen, verspreche aber nichts, sorry.
Gruß
Jochen
Anzeige
Lösung
14.08.2022 13:57:57
Marc
Hey hallo,
sorry für das verspätete melden.
Der Link hat mein Problem in der Tat gelöst.
Man muss die Datenbank mit folgenden Parametern versehen:
Die Lösung lag in der Art der Verschlüsselung.
die Datenbank entschlüsselt,
die Access-Option zur Verschlüsselung von Standard- auf Legacyverschlüsselung umgestellt und ( Datei --> Optionen --> Clienteinstellungen, ziemlich weit unten)
danach die Datenbank wieder verschlüsselt.
und in VBA dann folgendes :

DBcon.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Pfad & DB & ";Jet OLEDB:Database Password =" & passwort
Ganz ganz lieben Dank für die Hilfe.
schönen Sonntag
Marc
Anzeige
AW: Gerne
14.08.2022 14:03:48
JoWE
AW: mit Excel/VBA auf Access zugreifen
13.08.2022 21:06:16
JoWE
Frage wieder offen,
vllt. weiss ja jemand weiter?

10 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige