View Full Version : Abrfrage in Excel auf die AS400 die sich auf eine Zelle der aktuelle Tabelle bezieht
StevEiserman
05-10-22, 08:45
Hallo,
ich habe eine Abfrage in Excel auf die AS400 wo ich aus der History die erledigten
Aufträge abfrage (IBM i Access für Windows - ODBC-). Die Datei ist gespeichert unter C:\Dokumente\Auftraege.xlsx
Ich muss wenn ich einen bestimmten Auftrag suche (TPANR1) mit Filtern oder mit festen Code im Befehlstext arbeiten oder über Formeln (Svwerweis) in einer anderen Tabelle auswerten.
Das ist alles sehr Mühsam bzw. Rechenaufwendig.
Gibt es eine Möglichkeit, dass ich in dieser Exceldatei mich auf die Tabelle1!A1 beziehen kann
(TPANR1=Tabelle1!A1) und die Abfrage in Tabelle2 nur das Erbebnis ausgibt??
Ja.
Gib an die Stelle im SQL, die einer Zelle zugeordnet werden soll einen Parametermarker "?" ein.
In den Verbindungseigenschaften kannst du dann den Parametern einzelne Zellen zuweisen.
Query-Abfragen:
https://support.microsoft.com/de-de/office/anpassen-einer-parameterabfrage-addf7cb7-ddf0-442f-a60c-cd7280e201bd
Powerquery:
https://support.microsoft.com/de-de/office/erstellen-einer-parameterabfrage-power-query-5eb365bc-3982-4ab2-8830-b205a69e0f33
StevEiserman
05-10-22, 09:56
Hallo Fuerchau,
ich muss ersmal zugeben, das ich hier noch ein blutiger Anfänger bin.
Ich habe eine Select Abfrage wo in den Verbindungseigenschaften
Parameter ausgegraut ist.
Dann hast du auch keine "?" im SQL.
Bearbeite den SQL und schreibe in die Where-Klausel z.B. "where Kunde = ?".
StevEiserman
05-10-22, 13:33
Hallo Fuerchau,
genau das wollte ich nicht, das ich in Excel über
Daten---> Verbindungseigenschaften-->Definition-->
den Befehlstext umschreibe.
Der Grund ist erstens sollen das Mitarbeiter machen, die wenig im Excel arbeiten
und damit ein großes Problem hätten.
2. Will ich in kurzer Zeit viele Aufträge damit aufrufen.
Es wäre schön wenn es hier eine einfache praktikable Lösung gäbe?
Das ist doch die einfache Lösung ...
in den Vrbindungseigenschaften beziehst du dich dann auf sheet0, Zelle A2
In sheet0 schreibst du in Zelle A1 'welcher Kunde:'
Genau. Ohne Anpassung des SQL's wo denn der Parameter eingesetzt werden soll gehts halt nicht.
Erst wenn Excel Parameter im SQL erkennt, kannst du mit dem o.a. Register die Parameter dann Zellen zuweisen.
Danach braucht man nur in die Zellen was passendes eingeben und Daten aktualisieren auswählen.
Hat man was falsches eingegeben gibts 2 Möglichkeiten:
a) Daten nicht gefunden, dann ist der Abfragebereich leer.
b) Wert passt nicht zum Parameter, dann gibts diesbzgl. eine Fehlemeldung.
Das mache ich seit Excel 97 so.
StevEiserman
06-10-22, 08:01
Hallo Robi, Hallo Fuerchau,
das hört sich gut aber leider weis ich nicht genau wie ich die Tabelle1!A1
in meine Select-Abfrage mit einbinde, könnt Ihr mir hier bitte helfen?
Vielen Dank
Schau dir die Links in meiner 1. Antwort bitte genau an. Da ist alles erklärt.
StevEiserman
06-10-22, 08:55
641
Wei bereits geschrieben ist Parameter ausgeraut