Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Ergebnis von DoCmd.OpenQuery an Variable übergeben

195 views
Skip to first unread message

halber.ku...@gmail.com

unread,
Feb 27, 2013, 10:19:26 AM2/27/13
to
Hallo zusammen,

ich benutze Access 2007 mit verknüpften Tabellen, die in einer Oracle-DB liegen.
In dieser Oracle-DB existiert für eine Tabelle, die ich aus Access heraus füllen möchte, eine Sequenz für einen Autowert-Zähler.

Ich habe nun in Access eine Pass-Through-Abfrage auf diese Sequenz erstellt und bekommen den nextval-Wert der Sequenz.

Ich möchte diesen abgefragten Wert in VBA an eine Variable übergeben, die ich dann wiederum in meinem Insert aus dem Formular verwende.

Ich habe dies versucht - leider ohne Erfolg:

sq_recno = DoCmd.OpenQuery stDocName, acNormal, acEdit

Es kommt ja immer nur genau ein Wert zurück. Wie kann ich das in Access machen?

Vielen Dank im voraus und liebe Grüße,
Achim

Stefan Schulte-Kellinghaus

unread,
Feb 27, 2013, 11:27:13 AM2/27/13
to
Hallo Achim,
ich mache sowas (in access 2003) mit dlookup, ich nehme an, das geht auch in access 2007:

wenn Deine Abfrage garantiert nur ein Feld und einen Datensatz hat, dann sollte es reichen im folgenden FELDNAME und PASSTHROUGH-ABFRAGE durch die konkreten Namen zu ersetzen:

sq_recno = dlookup("FELDNAME ","PASSTHROUGH-ABFRAGE")

Gruß, Stefan

Lutz Uhlmann

unread,
Feb 28, 2013, 2:36:11 AM2/28/13
to
Hilft da evtl SELECT INTO?

SELECT * INTO TMP_RESULT FROM [PASSTHROUGH_QRY]

Das als eigene Abfrage speichern und �ber DoCmd.OpenQuery ausf�hren.

halber.ku...@gmail.com

unread,
Feb 28, 2013, 8:47:08 AM2/28/13
to
Am Mittwoch, 27. Februar 2013 17:27:13 UTC+1 schrieb Stefan Schulte-Kellinghaus:
> Am Mittwoch, 27. Februar 2013 16:19:26 UTC+1 schrieb halber.ku...@gmail.com: > ich benutze Access 2007 mit verknüpften Tabellen, die in einer Oracle-DB liegen. > > In dieser Oracle-DB existiert für eine Tabelle, die ich aus Access heraus füllen möchte, eine Sequenz für einen Autowert-Zähler. > > Ich habe nun in Access eine Pass-Through-Abfrage auf diese Sequenz erstellt und bekommen den nextval-Wert der Sequenz. > > Ich möchte diesen abgefragten Wert in VBA an eine Variable übergeben, die ich dann wiederum in meinem Insert aus dem Formular verwende. > > Ich habe dies versucht - leider ohne Erfolg: > > sq_recno = DoCmd.OpenQuery stDocName, acNormal, acEdit > > Es kommt ja immer nur genau ein Wert zurück. Wie kann ich das in Access machen? > Hallo Achim, ich mache sowas (in access 2003) mit dlookup, ich nehme an, das geht auch in access 2007: wenn Deine Abfrage garantiert nur ein Feld und einen Datensatz hat, dann sollte es reichen im folgenden FELDNAME und PASSTHROUGH-ABFRAGE durch die konkreten Namen zu ersetzen: sq_recno = dlookup("FELDNAME ","PASSTHROUGH-ABFRAGE") Gruß, Stefan

Hallo Stefan,

vielen Dank - das hat genauso funktioniert, wie ich es erwartet habe.

Liebe Grüße,
Achim
0 new messages