Anzeige
Archiv - Navigation
424to428
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
424to428
424to428
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler in DB-Verbindung

Fehler in DB-Verbindung
10.05.2004 21:56:09
hugo
Hallo Excelcracks
Ich bin am Verzweifeln.
Was habe ich gemacht.
1.) ich habe eine Excel-Datei geöffnet und mit dem Namen Muster1.xls und im Verzeichnis d:\daten\exceldb abgelegt.
2.) via VB-Editor / Extras / Verweise habe ich die Microsoft DAO 3.51 Object Library aktiviert
3.) Danach habe ich eine kleine Access-DB mit dem Namen ExcelDB1.mdb im gleichen Verzeichnis abgelegt.
Darin ist eine Tabelle (Artikel) mit den Spalten:

Artikel-Nr (AutoText,Long Integer, Inkrement)-Primäeschlüssel
Artikelname (Text)
Artikelbeschreibung (Text)
4.)Habe dann folgenden Code (von Herberseite) in einem Modul im Projekt Muster1.xls eingefügt.
-----------------------------
Option Explicit
Dim iCols As Variant
Dim cells As Variant
Dim name As String
Dim DB1 As Database
Dim RS1 As Recordset
Dim Querry As String

Sub CopyFromAccess()
Querry = "SELECT ArtikelNr, Artikelname, Artikelbeschreibung FROM abfragen"
On Error GoTo ErrorHandler
Set DB1 = OpenDatabase(ThisWorkbook.Path & "\ExcelDB1.mdb")
Set RS1 = DB1.OpenRecordset(Querry, Type:=dbOpenDynaset)
With Worksheets("Tabelle1")
.Select
.Range("A1").CurrentRegion.Select
.Range("A1").CurrentRegion.Clear
For iCols = 0 To RS1.Fields.Count - 1
Worksheets("Tabelle1").cells(1, iCols + 1).Value = RS1.Fields(iCols).name
Next
.Range(Worksheets("Tabelle1").cells(1, 1), Worksheets("Tabelle1").cells(1, RS1.Fields.Count)).Font.Bold = True
.Range("A2").CopyFromRecordset RS1
.Select
End With
DB1.Close
On Error GoTo 0
Exit Sub
ErrorHandler:
'Fehlermeldungen
DB1.Close
End Sub

------------------------
Nach der Zeile Set DB1 = OpenDatabase(ThisWorkbook.Path & "\ExcelDB1.mdb")springt das Programm sofort auf DB1.Close
Anschliessend erhalte ich nun immer den Fehler
--------
Laufzeitfehler 91 - Objektvariable oder With-Blockvariable nicht festgelegt.
Was mach ich falsch?
Danke und Gruss
Hugo

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler in DB-Verbindung
Ramses
Hallo
Die Deklarationen müssen innerhalb des Codes stehen
Also
Sub...
Dim iCols As Variant
Dim cells As Variant
Dim name As String
Dim DB1 As Database
Dim RS1 As Recordset
Dim Querry As String
...
Zusätzlich würde ich zum testen mal die Zeile "On Error.." auskommentieren, und mal schauen was EXCEL tatsächlich für Fehlermeldungen bringt.
Gruss Rainer
AW: Fehler in DB-Verbindung
10.05.2004 22:14:57
hugo
Rainer
Danke für die Hilfe
Habe alles so gemacht wie Du das gesagt hast und nun bekomme ich die Meldung.
----------------
Laufzeitfehler 429 - Objekterstellung durch Aktiv-X Komponente nicht möglich.
----------------
Was ist das den nun schon wieder?
Gruss Hugo
Anzeige
AW: Fehler in DB-Verbindung
Ramses
Hallo
meine Glaskugel ist leider schon im Bett ;-)
Welche Zeile wird denn markiert ?
Hast du den Verweis gesetzt ?
Ausserdem hoffe ich, dass die Zeile
Querry = "SELECT ArtikelNr, Artikelname, Artikelbeschreibung FROM abfragen"
nicht wirklich so in deinem Code steht.
Die SQL Anweisung muss schon richtig geschrieben werden ( Was willst du denn wissen davon ? ) und die Tabellenfelder in der Access-DB müssen auch so vorhanden sein
Vielleicht solltest du als VBA-Neuling mit etwas leichterem beginnen ;-) ?
Gruss Rainer
AW: Fehler in DB-Verbindung
10.05.2004 22:37:09
Hugo
Rainer
Danke für Deine Gedult.
Es wird folgende Zeile markiert
Set DB1 = OpenDatabase(ThisWorkbook.Path & "\ExcelDB1.mdb")
Was den Code angeht, da habe ich das folgende von Herber.de kopiert
Querry = "SELECT [Spalte1],[Spalte2],[Spalte3] FROM abfragen"
Nun gehe ich davon aus das die Werte [Spalten]mit den Spaltenüberschriften von meiner DB-Tabelle ersetzt werden müssen. Oder?
Gruss Hugo
Anzeige
AW: Fehler in DB-Verbindung
Ramses
Hallo
hast du die Mappe mit der du das probierst schon gespeichert ?
Wenn nicht, ergibt
ThisWorkbook.Path
nämlich NIX ;-)
Hier ein Beispiel wie ich die Daten in eine EXCEL Tabelle hole
'SQL String definieren
'Typ und Hersteller sind Feldbezeichnungen
'tblFahrzeuge ist der Name der Tabelle in ACCESS
mySQL = "SELECT Typ,Hersteller FROM tblFahrzeuge"
'Abfrage ausführen mit Recordset
Set myRS = myDB.OpenRecordset(mySQL)
'Einfügen der abgefragten Daten
'in Tabelle1 ab A1
Worksheets("Tabelle1").Cells(1, 1).CopyFromRecordset myRS
Gruss Rainer
Anzeige
AW: Fehler in DB-Verbindung
10.05.2004 23:30:46
Hugo
Rainer
Nun habe ich Deinen Code genommen und die Daten entsprechend angepasst.
Leider erhalte ich wieder den Fehler 91 von vorher.
MyRs hat den Wert Nothing
Was mache ich falsch, oder was fehlt, dass diese Sache nicht funktioniert?
Hugo
AW: Fehler in DB-Verbindung
.
Hallo Hugo
Am Einfachsten wäre eine kurze Problemschilderung
(.)
AW: Fehler in DB-Verbindung
11.05.2004 00:11:37
hugo
Hallo .
Hier mein Anliegen (Urproblem).
In meinem Excel-Sheet (Dateiname = ExcelDB.xls) möchte ich in der Zelle A5 einer Wert von 1-10 (Zahl) eingeben. Gebe ich nun als Beispiel 5 ein soll er in der Access-DB die anderen Werte die mit der 5 identisch auslesen und im Excel-Sheet in die Zelle A7, A8, A9 schreiben.
So würde z.b. die Access-Tabelle (Dateiname ExcelDB1.mdb) aussehen:
ArtikelID Artikelname Artikelgruppe Artikelwert
-----------|---------------|----------------|--------------
1 | Schraube | Handwerk | 20
2 | Kerze | Haushalt | 70
3 | Schraubezieher | Handwerk | 50
4 | Wolle | Haushalt | 60
5 | Milch | Essen | 10
6 | Käse | Essen | 80
7 | Reifen | Fahrzeug | 90
8 | ... | ... | ..
---------------------------------------------------------
Soweit das Problem! Jetzt sollte ich einmal die DB anbinden und dann die daten auslesen und in Excel einfügen.
Gruss Hugo
Anzeige
AW: Fehler in DB-Verbindung
B.Ate
Hallo Hugo
Du möchtest in Excel ein Ereignis auslösen und dann in Access Daten abfragen, die dann
in Excel erscheinen ?
Gruß Beate
AW: Fehler in DB-Verbindung
11.05.2004 12:06:26
Hugo
Beate
Merci für Dein Feedback. Ja genau so etwas stelle ich mir vor.
Gruss Hugo

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige