vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Zugriff auf verknüpfte Access DB aus Excel 
Autor: PtonkaVB
Datum: 23.03.12 14:06

Hallo zusammen,
ich nutze in Escel (2003) folgendes Script, um Daten aus einer Access-DB (auch 2003)
auszulesen und in Excel in eine Zelle zu schreiben:

Sub ADO_Recordset_komplett_uebernehmen()

Application.ScreenUpdating = False
Dim con As ADODB.Connection
Dim datei As String
Dim fld As Field
Dim rs As ADODB.Recordset
Dim spalte As Long
Dim accTab As String
Dim ws As Worksheet
Dim zeile As Long
Dim s As String

'Den Ausgangswert für die Suche in die Variable s schreiben
s = Range("D2").Value

' (0) SQL-String
accTab = "SELECT DOMAIN FROM x86Intel WHERE INVENTARNR = " & "'" & s & "'"
' (1) Verbindung zur Datenbank herstellen

datei = "F:\Daten\Access\LSM_NEU.mdb"

Set con = New ADODB.Connection
con.Open ConnectionString:= _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & datei

' (2) Recordset erstellen
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseServer
rs.Open Source:=accTab, _
ActiveConnection:=con, _
CursorType:=adOpenKeyset, _
LockType:=adLockReadOnly, _
Options:=adCmdTableDirect

' (3a) Tabellenblatt selektieren
Set ws = ThisWorkbook.Worksheets("Tabelle1")

' (3b) Stelle angeben, an die der neue Wert in Excel übergeben werden soll
ws.Range("D20").CopyFromRecordset _
Data:=rs, _
MaxRows:=ws.Rows.Count - 1, _
MaxColumns:=ws.Columns.Count

' (4) Recordset und Verbindung schließen

rs.Close
con.Close
Set rs = Nothing
Set con = Nothing
Application.ScreenUpdating = True
End Sub

Dieses makro funktioniert einwandfrei, sobald die Access-DB "eigenständig" ist, also eigene Tabellen besitzt. Sobald aber eine Tabelle eine Verknüpfung ist (in meinem Fall eine Verknüpfung zu einer Oracle-DB) funktioniert das Makro nicht mehr und ich erhalte an der Stelle:

rs.CursorLocation = adUseServer
rs.Open Source:=accTab, _
ActiveConnection:=con, _
CursorType:=adOpenKeyset, _
LockType:=adLockReadOnly, _
Options:=adCmdTableDirect

eine Fehlermeldung:
Laufzeitfehler '-2147467259 (80004005)':
Die Methode 'Open' für das Objekt '_Recordser' ist fehlgeschlagen.


Hat jemand eine Ahnung warum das so ist?
Ich habe keinerlei Erklärung dafür.
Für eine Hilfe wäre ich sehr dankbar.
Gruß,
Jochen (=Ptonka)
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zugriff auf verknüpfte Access DB aus Excel2.483PtonkaVB23.03.12 14:06
Re: Zugriff auf verknüpfte Access DB aus Excel1.050Micke23.03.12 15:45
Re: Zugriff auf verknüpfte Access DB aus Excel1.021wb-soft25.03.12 19:17
Re: Zugriff auf verknüpfte Access DB aus Excel1.010PtonkaVB26.03.12 09:59
Re: Zugriff auf verknüpfte Access DB aus Excel1.018wb-soft26.03.12 10:29

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel