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

Forumthread: Daten aus MDB-Datei kopieren?

Daten aus MDB-Datei kopieren?
02.05.2005 14:18:26
Sabine
Hallo Leute,
habe ein dringendes Problem: Mit folgender Prozedur öffne ich eine Excel-Datei und kopiere die Daten in eine andere:

Sub Datei_öffnen1()
Dim Filter As String, Title As String
Dim FilterIndex As Integer
Dim Filename As Variant
Filter = "Excel Files (*.xls),*.xls," & _
"Text Files (*.txt),*.txt," & _
"All Files (*.*),*.*"
FilterIndex = 3
Title = "Wählen Sie bitte eine Datei aus!"
ChDrive ("C")
ChDir ("C:\Eigene Dateien")
With Application
Filename = .GetOpenFilename(Filter, FilterIndex, Title)
ChDrive (Left(.DefaultFilePath, 1))
ChDir (.DefaultFilePath)
End With
If Filename = False Then
MsgBox "Es wurde keine Datei ausgewählt."
Exit Sub
End If
Workbooks.Open Filename
MsgBox Filename, vbInformation, "Datei geöffnet"
ActiveWorkbook.Sheets("Daten").UsedRange.Copy _
Destination:=Workbooks("Projekt1.xls").Sheets("Export1").Range("A1")
End Sub

Nun kommen die Daten aber aus einer MDB-Datei. Kann man trotzdem mit einer Prozedur Daten da rausnehmen und in Excel einfügen?
Wäre für eine Antwort sehr dankbar.
VG, Sabi
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Daten aus MDB-Datei kopieren?
02.05.2005 15:52:08
Ralf
Hallo Sabine,
das ist bei deinem Level ein bischen schwierig. Prinzipiell funktioniert das mit folgendem Code aus dem Archiv:
Option Explicit
Private objAccess As New Access.Application
' Unter Extras - Verweise... folgende zwei Verweise setzen:
' Microsoft DAO x.x Object Library
' Microsoft Access x.x Object Library

Sub Von_Datenbank()
Dim ws As Workspace, row As Integer, col As Integer
Dim db As Object, rs As Recordset
Dim access_db As String
On Error Resume Next
Do
access_db = Application.GetOpenFilename( _
"Accessdatei (*.mdb), *.*", 1, "Datei auswählen...")
Loop Until (access_db <> "Falsch")
Set db = OpenDatabase(access_db) ' Set db = OpenDatabase("C:\Temp_1\Test.mdb")
Set rs = db.OpenRecordset("select * from Artikel")
row = 0
Range("A2").CopyFromRecordset rs
rs.Close
db.Close
Set rs = Nothing
Set db = Nothing
End Sub

Do ... Loop ist eine Schleife, die dich erst wieder raus lässt, wenn du auch eine MDB-Datei gewählt hast. Folgende Zeile musst du anpassen:
Set rs = db.OpenRecordset("select * from Artikel")
Hier wurde die Beispieldatei genommen, die bei Access in der Regel bei der Installation angelegt wird: "Nordwind.mdb"
Da gibt es die Tabelle "Artikel". Musst du also auf diene MDB-Datei anpassen.
Und die Verweise im VBA-Editor unter Extras - Verweise... setzen.
Hoffe es hilft.
Gruß
Ralf
Anzeige
AW: Daten aus MDB-Datei kopieren? FEHLER
02.05.2005 16:01:02
Sabine
Hi Ralf,
vielen Dank für Deine Message. Klappt noch nicht: "Benutzerdefinierter Typ nicht definiert" bekomme ich sowohl, wenn ich Deine Prozedur bei mir einfüge, als auch, wenn ich diejenige benutze, die ich mittlerweile in der Literatur gefunden habe:

Sub Daten_einfügen()
Dim Access As Access.Application
Dim Pfad As String
On Error Resume Next
Set Access = GetObject(, "Access.Application")
If Err = 429 Then
Set Access = CreateObject("Access.Application")
Access.OpenCurrentDatabase "\\...\Test"
ElseIf Err = 0 Then
Pfad = Access.Currentdb.Name
If Not Pfad = " " Then
Access.CloseCurrentDatabase
End If
Access.OpenCurrentDatabase "\\...\Test"
End If
On Error GoTo 0
End Sub

Hm, wie kann ich denn diese Verweise setzen? Im Menupunkt "Extras" habe ich keine Verweise.
VG, Sabi
Anzeige
AW: Daten aus MDB-Datei kopieren? FEHLER
02.05.2005 16:05:47
Ralf
Hallo Sabine,
in Excel Alt gedrückt halten und dann auf F11 - du musst die Verweise im VBA-Editor setzten, nicht in Excel. Oder Extras... Makro... Visual-Basic-Editor anklicken.
Dort dann bei Extras Verweise.....
Hoffe es hilft.
Gruß
Ralf
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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