Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Excel import in Access

Excel import in Access
16.01.2020 09:38:41
Josef
Guten Morgen,
ich weiß es ist kein 100%es Excel Thema,vielleicht weiß es trotzdem wer.
Ich würde gerne einzelne Zellen meiner Excel Dateien in meine Access Datei importieren. Jemand eine Ahnung, ob das überhaupt funktioniert oder ist es nicht möglich.
Vielen Dank und sorry falls es hier nicht hinpasst.
MFG Josef
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel import in Access
16.01.2020 09:50:11
EtoPHG
Hallo Josef,
(Fast) alles ist möglich (Toyota) ;-)
Nur lässt sich mit deiner Fragestellung nicht viel anfangen. Sei genauer und konsistenter in deiner Begriffwahl:
1) Zellen sind Bestandteile eines Tabellenblatts in einer Arbeitsmappe.
2) Access ist eine Datenbank (DB) mit Tabellen (table) mit Spalten (column) und Inhalten in Datensätzen (row).
3) Importieren kann vieles bedeuten. Welchen Regeln muss die Auswahl der Quelle (Mappe, Blatt, Zelle, Zeile, Spalte) folgen? Was ist das Ziel (DB, table, column, row)?
4) Wie, wer oder was soll den Import auslösen?
5) Was muss der Anwender für Aktionen ausführen?
Gruess Hansueli
Anzeige
AW: Excel import in Access
16.01.2020 09:56:08
Josef
Hi Hansueli,
Also ich würde gerne beispielsweise Zelle (6,6) und (7,6) aus dem Worksheet "Test.xls" in meine Access Datenbank("TestDB") Tabelle ("Lager") importieren die Datensätze sollen immer angefügt werden, also nichts überschrieben.
Schön wäre es wenn der Import über einen Button ausgelöst werden kann. Der Anwender muss nur den Import ausführen.
Vielen Dank für deine Hilfe!
Anzeige
AW: Excel import in Access
16.01.2020 12:07:06
volti
Hallo Josef,
wenn nur einige wenige Werte aus Excel nach Access übertragen werden sollen, könntest Du das u.a. Beispiel an Deine Bedürfnisse anpassen und verwenden.
Das Beispiel verwendet das sogenannte "Late Binding"-Verfahren. Hierbei wird kein Verweis auf die Access-Bibliothek benötigt, allerdings auch keine Intelligente-Hilfe angeboten. Ist in diesem einfachen Fall wohl auch entbehrlich.
Das Beispiel fügt zwei Werte untereinander in die erste (oder auch einzige) Spalte der Tabelle ein.
Das Makro kann dann einem Button zugeordnet werden.
Sub ImportEinzelWerteExcelToAccess()
'Einlesen von Daten aus einer Exceldatei in ACCESS (Beispiel)
'Late Binding-Verfahren (ohne Verweis)
 Dim accApp As Object, accDB As Object, accRS As Object
 Dim WSh As Worksheet
 Dim sDB As String, sTabelle As String
 Dim i As Integer
 
'<<< Werte anpassen >>>
 sDB = "C:\Users\voltm\Desktop\MyTools\Daten\MeineTestdatenbank.accdb"
 sTabelle = "MyTestTable"                   'Tabelle in DB
 Set WSh = ThisWorkbook.Sheets("Tabelle1")  'Quelltabelle
 
 Set accApp = CreateObject("ACCESS.Application")
 accApp.Visible = True
 Call accApp.OpenCurrentDatabase(sDB, False) 'Datenbank öffnen, Passwort ist optional
 Set accDB = accApp.CurrentDb
 Set accRS = accDB.Openrecordset(sTabelle)   'Tabelle festlegen
 With accRS
   For i = 6 To 7
   .AddNew
   .Fields(0) = WSh.Cells(i, 6).Value  '.Fields(1) = ... ZweiSpaltig?
   .Update
   Next i
   .Close
 End With
 accApp.DoCmd.CloseDatabase
 accApp.Quit
 Set accRS = Nothing
 Set accDB = Nothing
 Set accApp = Nothing
End Sub

viele Grüße
Karl-Heinz

Anzeige
AW: Excel import in Access
17.01.2020 06:46:34
Josef
Vielen Dank Karl-Heinz, werde es heute Abend testen (Y)
;

Forumthreads zu verwandten Themen

Anzeige
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

Excel-Daten in Access importieren


Schritt-für-Schritt-Anleitung

Um eine Excel-Tabelle in Access zu importieren, kannst du ein VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und klicke auf "Entwicklertools". Wenn der Tab nicht sichtbar ist, aktiviere ihn in den Excel-Optionen.

  2. Klicke auf "Visual Basic", um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeinWorkbookName)" > "Einfügen" > "Modul".

  4. Kopiere den folgenden VBA-Code in das Modul:

    Sub ImportEinzelWerteExcelToAccess()
       Dim accApp As Object, accDB As Object, accRS As Object
       Dim WSh As Worksheet
       Dim sDB As String, sTabelle As String
       Dim i As Integer
    
       sDB = "C:\Pfad\Zu\DeinerDatenbank.accdb" ' Pfad zu deiner Access-Datenbank
       sTabelle = "DeineTabelle" ' Tabelle in Access
       Set WSh = ThisWorkbook.Sheets("Tabelle1") ' Quelltabelle in Excel
    
       Set accApp = CreateObject("ACCESS.Application")
       accApp.Visible = True
       accApp.OpenCurrentDatabase(sDB, False)
       Set accDB = accApp.CurrentDb
       Set accRS = accDB.OpenRecordset(sTabelle)
    
       With accRS
           For i = 6 To 7 ' Zeilen, die importiert werden sollen
               .AddNew
               .Fields(0) = WSh.Cells(i, 6).Value ' Spalte, die importiert wird
               .Update
           Next i
           .Close
       End With
       accApp.DoCmd.CloseDatabase
       accApp.Quit
       Set accRS = Nothing
       Set accDB = Nothing
       Set accApp = Nothing
    End Sub
  5. Passe die Variablen sDB, sTabelle, und WSh an deine Bedürfnisse an.

  6. Führe das Makro aus, um die Daten zu importieren.


Häufige Fehler und Lösungen

  • Fehler: "Datenbank nicht gefunden"

    • Lösung: Überprüfe den Pfad zur Access-Datenbank (sDB). Stelle sicher, dass die Datei existiert.
  • Fehler: "Tabelle nicht gefunden"

    • Lösung: Achte darauf, dass der Tabellenname (sTabelle) korrekt ist und die Tabelle in der Datenbank existiert.
  • Fehler: "Zugriff verweigert"

    • Lösung: Stelle sicher, dass du die nötigen Berechtigungen hast, um die Datenbank zu öffnen.

Alternative Methoden

Es gibt verschiedene Möglichkeiten, Daten aus Excel in Access zu importieren:

  • Import über das Access-Menü:

    1. Öffne Access und gehe zu "Externen Daten".
    2. Wähle "Excel" und folge den Anweisungen des Assistenten.
  • Verwendung von Power Query:

    • Mit Power Query in Excel kannst du Daten aus einer Access-Datenbank abrufen und transformieren.

Praktische Beispiele

Ein einfaches Beispiel für den Import von Excel-Daten in Access könnte sein, die gesamten Daten einer Excel-Tabelle in eine Access-Tabelle zu importieren. Hier ist ein VBA-Beispiel:

Sub ImportExcelToAccess()
    Dim accApp As Object
    Set accApp = CreateObject("ACCESS.Application")
    accApp.OpenCurrentDatabase "C:\Pfad\Zu\DeinerDatenbank.accdb"

    accApp.DoCmd.TransferSpreadsheet TransferType:=acImport, _
        SpreadsheetType:=acSpreadsheetTypeExcel12, _
        TableName:="DeineTabelle", _
        FileName:="C:\Pfad\Zu\DeinerExcelDatei.xlsx", _
        HasFieldNames:=True

    accApp.Quit
    Set accApp = Nothing
End Sub

Tipps für Profis

  • Automatisierung: Du kannst das Makro an einen Button in Excel binden, um den Importvorgang zu automatisieren.
  • Fehlerprotokollierung: Füge eine Fehlerbehandlungsroutine hinzu, um eventuelle Importfehler aufzuzeichnen.
  • Datenvalidierung: Überprüfe die Daten in Excel vor dem Import, um sicherzustellen, dass sie den Anforderungen der Access-Datenbank entsprechen.

FAQ: Häufige Fragen

1. Wie kann ich eine ganze Excel-Tabelle in Access importieren?
Du kannst das TransferSpreadsheet-Methode in VBA verwenden, um die gesamte Tabelle zu importieren.

2. Kann ich Daten automatisch in Access importieren?
Ja, du kannst VBA verwenden, um den Import automatisch auszuführen, z.B. durch das Einrichten eines Timers oder eines bestimmten Ereignisses.

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