Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Via Excel auf Access Datenbank zugreifen

Via Excel auf Access Datenbank zugreifen
27.04.2021 08:36:01
Daniel
Hallo lieber Herber Forumer,
ich habe ein Problem, und zwar möchte ich einen button Programmieren, welcher auf eine Datenbank auf access zugreift.
In Access habe ich auch schon die .accdb Datei erstellt welche mir die Datenbank abfragt und eine access liste erstellt.
Nur möchte ich das eben nicht immer manuell in excel importieren sondern es soll automatisch geschehen.
Hat Jemand eine Idee oder einen Denkanstoß für mich?
Liebe Grüße
Daniel
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Via Excel auf Access Datenbank zugreifen
27.04.2021 09:32:02
Regina
Hi,
Du kannst aus Excel heraus auf dem Reiter Daten unter "Daten abrufen" das Ergebnis einer Access-Abfrage laden. Den ganzen Vorgang kannst Du mit dem Makrorekorder aufzeichnen.
das sollte Dir dann zumindest das Gerüst für weitere Automatisierungswünsche liefern.
Gruß Regina
AW: Via Excel auf Access Datenbank zugreifen
27.04.2021 13:36:39
Yal
Hallo Daniel,
wenn die Access-DB nicht die originale Db ist, sondern nur einen zwischenhandler, kannst Du mit PowerQuery direkt auf die Quelle zugreifen.
Im Reiter Daten auf "neue Abfrage", "Aus Datenbank" dann die Datenbank-Typ auswählen und einrichten, wie im Access.
Dann kannst Du die Daten entweder direkt abziehen, oder im Power Query Editor die Daten vorher bearbeiten.
VG
Yal
Anzeige
AW: Via Excel auf Access Datenbank zugreifen
27.04.2021 14:48:47
Klaus
Hallo Daniel,
ich mache das so:
(Verweis auf Active X 2.5 Libary muss gesetzt sein):

Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal Milliseconds As LongPtr)
Const pfad As String = "Y:\Datenbanken"
Const myAccessDB As String = "AccessDBName.accdb"
Sub Laden_SQL()
On Error GoTo hell
Const APPNAME = "mod_Access / Gefiltert_laden_SQL"
Dim cmd As ADODB.Command
Dim con As ADODB.Connection
Dim rs As ADODB.Recordset
Dim counter As Long
counter = 0
Set con = New ADODB.Connection
con.Open ConnectionString:= _
"Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=" & pfad & "\" & myAccessDB & ";" & _
"Mode=Share Deny none"
Set cmd = New ADODB.Command
cmd.ActiveConnection = con
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseServer
Dim MySql As String
'******** aus Access per SQL laden **************
MySql = "Select * from [Tabelle1]"
rs.Open MySql, _
ActiveConnection:=con, _
CursorType:=adOpenStatic, _
LockType:=adLockPessimistic, _
Options:=adCmdTableDirect
Tabelle1.Range("A1").CopyFromRecordset Data:=rs
'******* Per SQL nach Access schreiben **************
MySql = "Update [Tabelle1] set [Feld] = 'Hallo' Where [Feld2] = 'Welt'"
cmd.CommandText = MySql
cmd.Execute
'******* Fehlerbehandlung
Err.Clear
hell:
If Err.Number = -2147467259 Then
counter = counter + 1
Application.StatusBar = Format(Now, "hh:mm") & " Datenbank öffnen / Versuch " & counter & " von 100"
Sleep 25
If counter  0 Then MsgBox "Fehler in Sub """ & APPNAME & """" & vbCrLf _
& "Fehlernummer: " & Err.Number & vbLf & Err.Description
Err.Clear
Set cmd = Nothing
con.Close
Set con = Nothing
Application.StatusBar = ""
End Sub
LG,
Klaus M.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Auf Access-Datenbank mit Excel zugreifen


Schritt-für-Schritt-Anleitung

Um mithilfe von Excel auf eine Access-Datenbank zuzugreifen, kannst du folgende Schritte befolgen:

  1. Daten abrufen: Öffne Excel und gehe zum Reiter "Daten".
  2. Neue Abfrage erstellen: Klicke auf "Daten abrufen" und wähle "Aus Datenbank" und dann "Aus Microsoft Access-Datenbank".
  3. Datenbank auswählen: Wähle deine .accdb-Datei aus und klicke auf "Öffnen".
  4. Abfrage erstellen: Wähle die Tabelle oder Abfrage aus, die du importieren möchtest.
  5. Daten laden: Klicke auf "Laden", um die Daten in Excel zu importieren.

Falls du VBA verwenden möchtest, kannst du den folgenden Code verwenden, um die Datenbank direkt zu öffnen:

Sub Laden_SQL()
    Dim con As ADODB.Connection
    Dim rs As ADODB.Recordset
    Set con = New ADODB.Connection
    con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Pfad\zur\deiner\Datenbank.accdb;"
    Set rs = New ADODB.Recordset
    rs.Open "SELECT * FROM Tabelle", con
    ' Daten in Excel kopieren
    Sheet1.Range("A1").CopyFromRecordset rs
    rs.Close
    con.Close
End Sub

Häufige Fehler und Lösungen

  • Fehler beim Verbindungsaufbau: Stelle sicher, dass du die richtige Datenbankpfad und den Dateinamen angegeben hast. Überprüfe auch, ob du die richtige Version von Microsoft Access installiert hast.
  • Fehler 2147467259: Dies bedeutet, dass die Verbindung zur Datenbank nicht hergestellt werden konnte. Überprüfe die Netzwerkverbindung und die Berechtigungen für die Datenbankdatei.
  • Daten werden nicht angezeigt: Stelle sicher, dass die Tabelle in der Access-Datenbank vorhanden ist und die Abfrage korrekt ist.

Alternative Methoden

  1. Power Query: Du kannst auch Power Query verwenden, um auf die Access-Datenbank zuzugreifen. Gehe zu "Daten" > "Neue Abfrage" und wähle "Aus Datenbank". Dies ermöglicht eine flexible Datenbearbeitung.

  2. Makrorekorder: Eine weitere Möglichkeit ist die Verwendung des Makrorekorders in Excel, um die Schritte zum Abrufen der Daten aufzuzeichnen und später zu automatisieren.


Praktische Beispiele

  1. Zugriff auf Kundendatenbank: Wenn du eine Kundendatenbank in Access hast, kannst du die Kundendaten in Excel importieren, um sie für Analysen oder Berichte zu verwenden.

  2. Aktualisierung von Daten: Mit VBA kannst du nicht nur Daten abrufen, sondern auch Änderungen an der Access-Datenbank vornehmen, wie z.B. das Aktualisieren von Datensätzen.


Tipps für Profis

  • Verwende Parameterabfragen: Wenn du dynamische Abfragen in Access verwendest, kannst du Parameter in dein VBA-Skript integrieren, um spezifische Daten abzurufen.
  • Fehlerbehandlung in VBA: Implementiere eine robuste Fehlerbehandlung in deinem VBA-Code, um Probleme beim Zugriff auf die Datenbank zu identifizieren und zu beheben.
  • Verknüpfungen nutzen: Du kannst Excel als Frontend für deine Access-Datenbank verwenden und Daten direkt über Excel-Formeln abrufen.

FAQ: Häufige Fragen

1. Wie kann ich eine Access-Datenbank von Excel aus öffnen?
Du kannst dies mit VBA tun, indem du eine ADODB-Verbindung zur Datenbank herstellst, wie im obigen Beispiel gezeigt.

2. Was ist der Unterschied zwischen Excel und Access?
Excel eignet sich hervorragend für Datenanalysen und Berechnungen, während Access eine leistungsstarke Datenbankverwaltung bietet, die für umfangreiche Datensätze und komplexe Abfragen optimiert ist.

3. Kann ich Access-Daten in Excel aktualisieren?
Ja, du kannst Daten in Access über VBA aktualisieren, indem du SQL-Befehle ausführst, wie im Beispielcode gezeigt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige