Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
604to608
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
604to608
604to608
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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

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

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige