Problem OBDC / Access / Excel

benji

Benutzer
Beiträge
8
Hallo zusammen,

ich habe ein Problem mit Excel/Access. Ich habe eine Access Datenbank angelegt mit der ich auf Daten unserer MS-SQL Datenbank (ERP-System) zugreife. Die Daten bereite ich mit diversen Abfragen auf und möchte diese im Nachgang in Excel weiterverarbeiten. Jede einzelne Abfrage für sich funktioniert und liefert die gewünschten Daten. Die Einbindung in Excel funktioniert aber nur bedingt. Ich habe insgesamt vier Abfragen die zum Teil aufeinander aufbauen. Bei drei Abfragen werden mir in Excel auch Daten angezeigt, bei einer Abfrage jedoch nicht "keine Daten vorhanden". Es ist mir absolut unerklärlich wieso!? Ich bekomme keine Fehlermeldung o.ä.
Wie kann ich dem Problem am besten auf die Schliche kommen?

Hat jemand einen Tipp oder Ansatz? Vielen Dank.

VG
Benji
 
Werbung:
Warum fragst du mit Excel nicht direkt MSSQL ab? Was genau macht Access in dem Zusammenhang?

Funktioniert die problematische Abfrage denn in einem MSSQL Management Studio? Falls nein, wäre es gut, die Abfrage hier zu posten.

Grundsätzlich lassen sich manche Abfragen / Auswertungen auch gut in MSSQL als Sicht anlegen und Excel macht dann nur noch ein SELECT * FROM view , weil Excel nicht alles kann und auch schnell unübersichtlich wird. Ändert sich dann die Abfrage ändert man einfach die View.
 
Wie bindet du die Abfragen in Access, Excel ein?
Jeweils Direkt über ODBC, per Code? Ruft eine Abfrage die andere auf oder erfolgt das sequentiell im Client?
"keine Daten" ist kein Fehler.
Das liegt meist an Filterkriterien, die eben alles wegfiltern.
Du müsstest mehr zum Aufbau des Verfahrens sagen.
 
Ich gehe den Weg über Access, da ich auf den ERP-SQL Server nur bedingten Zugriff habe und dort nicht allzu viel "herumspielen" möchte. Zudem ergänze ich in Access die Abfragen mit Daten aus eigenen Tabellen. Ich habe nichts direkt in Code geschrieben. Alles zusammen "geklickt".
Für den Abruf in Excel gehe ich den Weg: Daten - Daten abrufen - Aus Datenbank - Access

In Excel möchte ich die Daten grafisch aufbereiten und Kollegen zur Verfügung stellen.

1741079660746.webp

1741079718895.webp
 
Ich habe das Problem in Access "zurückverfolgt".
Diese relativ einfache Abfrage "überträgt" auch schon keine Daten nach Excel, ist aber Grundlage für die zurvor gezeigte Abfrage

1741080817234.webp

In Access werden Daten ausgegeben.
 
Teste es doch mal direkt in Excel, ob das selbe dort funktioniert.
Kaputt kannst du nichts machen, da du eh nur Read-Only aus Excel heraus zugreifst.
 
Es gibt ein weiteres Phänomen: Ich habe ein Backup der Access Datenbank erstellt. Wenn ich aus Excel auf das Backup zugreife, bekomme ich über die zuletzt gezeigte "qry_AuftragVKStd" zumindest Daten.
Kann das evtl. an einem OBDC-Treiber oder an grundsätzlichen Einstellungen o.ä. liegen? Mal funktioniert es, mal nicht!? Strange...
 
Kannst du dir dazu mal den Code der Abfrage anzeigen lassen?

Mich irritieren diese "Kriterien", vor allem dbo_Preisindex LIKE '*' (wozu?) und dbo_AuftPos.Positionsart = 'L'. Vermutlich ist eine der Bedingungen falsch.

Theoretisch könnte man Access auch durch einen zweiten SQL Server ersetzen. Das ist aber eher unabhängig davon. Mit Access geht es vermutlich auch, damit kenne ich mich nur nicht ganz so gut aus. Irgendwo müsste man den SQL-Code einsehen können.
 
Kannst du dir dazu mal den Code der Abfrage anzeigen lassen?

Mich irritieren diese "Kriterien", vor allem dbo_Preisindex LIKE '*' (wozu?) und dbo_AuftPos.Positionsart = 'L'. Vermutlich ist eine der Bedingungen falsch.

Theoretisch könnte man Access auch durch einen zweiten SQL Server ersetzen. Das ist aber eher unabhängig davon. Mit Access geht es vermutlich auch, damit kenne ich mich nur nicht ganz so gut aus. Irgendwo müsste man den SQL-Code einsehen können.
Du bist anscheinend mein Retter!

dbo_Preisindex LIKE '*' --> das machte keinen Sinn, obwohl es aus meiner Sicht auch keinen Einfluss haben dürfte. Ich habe das Kriterium entfernt und nun funktioniert erst einmal alles so wie es soll :)

VIELEN DANK !

Mir ist nur nicht klar, wieso die Abfrage in Access funktioniert und nur in Excel keine Daten ankommen...
 
Mir ist nur nicht klar, wieso die Abfrage in Access funktioniert und nur in Excel keine Daten ankommen...
Das müsste eine heterogeneous Abfrage sein.
..dbo ist server
Ohne ...dbo wahrscheinlich lokale access Tabellen.
Like * ist glaublich Access SQL.
Auf dem Server wäre es
Like %
Gibt wahrscheinlich inhaltlich keinen Sinn, egal, versteht aber nur Access.

Diese Klickabfragen wirken vielleicht auf Anfänger sexy, aber man sollte sich an SQL gewöhnen. Schalt mal die Darstellung um auf SQL...

Und dann ist mit dem heterogenen Zeug auch nicht so der Hammer.
Lieber linked Tables oder Pass Through Queries, die vollständig serverseitig laufen.
Anreicherung dann lokal.
 
Werbung:
Hm in Excel fragst du dann die Abfrage aus Access ab oder wie muss ich mir das Vorstellen? Also mit einer View ginge das. Wenn Excel jetzt ein SELECT * FROM Access.Abfrage macht eventuell auch. Oder Excel führt die Abfrage auf Access selber aus (keine Ahnung ob das denkbar wäre) und dann wären Syntax Unterschiede natürlich ein Problem.

Ein kleiner MSSQL Express als ETL System. Da drin kann man einfach Views zusammen bauen die per linked server direkt aus der eigentlichen DB lesen. Die kann man dann von Excel aus einfach mit SELECT * FROM view abfragen. Das Ganze setzt dann SQL voraus als Abfragesprache und zum Views erzeugen, das ist sicherlich eine Einstiegshürde. Dafür ist es aber sehr flexibel. Du kannst die Views anpassen und Excel lassen wie es ist. Du kannst außerdem granular Berechtigungen verteilen wer was lesen darf. Ich habe bei uns sowas gebaut und sogar RLS (Row Level Security) eingebracht, so das jeder nur seine Daten abfragen kann.
 


Schreibe deine Antwort....
Zurück
Oben