SQL Abfrage, grafisch nicht darstellbar, Parameter

Hallo zusammen,

ich versuche mit Microsoft Query bestimmte Daten in Excel einzulesen. Da ich in der Abfrage auch mit Case arbeite, kann die SQL-Abfrage grafisch nicht dargestellt werden. Allerdings muss ich Parameter verwenden können, die in der gleichen Excel Mappe auf einem anderen Tabellenblatt vom User eingegeben werden sollen.

Wenn ich also beispielsweise (zeitraum Between ? And ?) verwenden will, bekomme ich immer folgende Warnung: „Parameter sind in Abfragen, die nicht grafisch dargestellt werden können, ungültig.“

Da ich in der Abfrage, den Zeitraum aber nicht fest hinterlegen kann (da dieser sich ändert), brauche ich eine Lösung, wie ich mit Werten aus der Excel Tabelle arbeiten kann.

Kann mir da jemand weiterhelfen? Vielen Dank bereits im Vorraus.

Mit freundlichen Grüssen,
Kaaddii

P.S.: Ich arbeite mit Microsoft ® Office Excel 2003 SP2

Vielleicht hilft dir das:
für Parameter die in Tabellen stehen kannst du in der abfrage [?] nutzen
Bsp: select vorname from … where name = [?]
=> Daten an Excel zurückgeben => Feld auswählen der dem Parameter entspricht und wenn sich Parameter ändert noch Häckchen setzten

Nachteil: Ich glaub man kann nur einen Externen Parameter setzen, weil Querry nur ein „?“ kennt

Vielen Dank dafür, aber leider funktioniert das nicht. Parameter werden nur mit ? , d.h. ohne die eckigen Klammern verwendet. Mit eckigen Klammern funktioniert es gar nicht und ich bekomme eine Fehlermeldung, dass mein SQL angeblich nicht stimmt, obwohl ich den festen Wert einfach nur mit [?] ersetzt habe. Wenn ich allerdings die festen Werte nur mit ? ersetze, steht dort wieder die Meldung: Parameter sind in Abfragen, die nicht grafisch dargestellt werden können, ungültig.

Trotzdem danke! Vielleicht noch andere Ideen?

Hallo Kaaddii

Ich habe es jetzt noch mal ausprobiert und bin auch gescheitert. Ich kenn deine genaue abfrage nicht aber vielleicht kannst du statt „case“ auch Excel bekannte SQL Ausdrücke nehmen wie:
If(Bedingung,dann dies,sonst jenes)

oder: du versuchst alle möglichen Parameter gleich in die Datenbank zu schreiben und dann die Abfrage darauf zu beziehen (Womöglich kannst du sie dann vereinfachen auf „Excel Niveau“)

oder: du schreibst ein kleines Script/Programm mit einer dir bekannten Programmiersprache. Dann bist du vollig frei in deinen Abfragen und kannst auch „case“ verwenden. (Ich benutzt dafür meist Delphi)

Vielleicht kannst du nochmal erklären was mit den Daten geschehen soll. Gruß Mike