Office: (Office 2007) Anfügeabfrage per VBA ausführen

Helfe beim Thema Anfügeabfrage per VBA ausführen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo liebes Forum. Ich suche schon den halben Tag nach der Ursache von folgendem Problem. Ich erstellte eine Anfügeabfrage namens... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Grummel13, 24. Januar 2015.

  1. Anfügeabfrage per VBA ausführen


    Hallo liebes Forum.

    Ich suche schon den halben Tag nach der Ursache von folgendem Problem.

    Ich erstellte eine Anfügeabfrage namens "qry_Offerten_Kennung_anfügen".
    Der SQL-Code sieht dort wir folgt aus:
    Code:
    Wenn ich diese Anfügeabfrage per Code
    Code:
    ausführe, erscheint die Meldung
    "1 Parameter wurden erwartet, aber es wurde zu wenigen Parameter übergeben"."

    Unter Abfragetools -> Ausführen, klappt der Code super.


    Nach vielem Ausprobieren kam ich darauf, dass es an dem Kriterium (WHERE-Bedingung) "[Frm_Eingabe_Tagespreis]![Offertennummer]" liegen muss bzw. an den Hochkommas oder Anführungszeichen liegen muss '[Frm_Eingabe_Tagespreis]![Offertennummer]' oder "[Frm_Eingabe_Tagespreis]![Offertennummer]".

    Scheinbar gibt es aber einen Unterschied zw. der Eingabe in der Abfrage selbst und deren Ausführung unter VBA.

    Für jeden heißen Tipp bin ich sehr dankbar.

    Vielen Dank & schöne Grüße

    :)
     
    Grummel13, 24. Januar 2015
    #1
  2. Die Methode .execute funktioniert nicht, wenn Du ihr den Namen der Abfrage übergibst.
    Du musst
    a) die SQL Anweisung in einen String schreiben und
    b) den String als Argument an .execute übergeben

    Und wenn Du das in dem Formular Frm_Eingabe_Tagespreis veranstaltest, dann reicht es auch, den Wert für Offertennummer so zu übergeben:
    Code:
    ... der muss aber ausserhalb des Strings stehen ... also so:
    Code:
    Und wenn die Offertennummer ein Textfeld ist, müssen da noch Apostrophen drum ...
    Code:
     
    hcscherzer, 26. Januar 2015
    #2
  3. Hallo,

    ergänzend zu Hans-Christians Bemerkung:

    teste zunächst mal den Ersatz von [Formulare] durch [Forms].

    Ansonsten wäre natürlich der Datentyp von [Offertenummer] zu beachten: Als Text erfordert er Hochkommatas.
     
  4. Anfügeabfrage per VBA ausführen

    Danke für Eure Hilfe!

    Ginge es auch ohne SQL-String - sprich direkt aus einer Abfrage heraus?
    Oder ist dies nicht vorgesehen?

    Vielen Dank noch einmal!
     
    Grummel13, 26. Januar 2015
    #4
  5. Ja. Führst Du diese Abfrage direkt in Access aus, kümmert sich das fürsorgliche Access um die zielgenaue Parameterübergabe (Lesen des Formulartextfeldes).
    Bei der Ausführung per VBA wird die Abfrage an die Jet-Engine übergeben. Die kennt nur Tabellen und Abfragen, aber keine Formulare und Berichte. Somit kann sie mit dem Formulartextfeld nichts anfangen und fragt daher separat nach diesem unbekannten Begriff bzw. dessen Inhalt.

    Auswege:

    1) Den hat Hans-Christian gezeigt. Durch das Zusammensetzen des SQL-Strings wird erst der Wert des Formularfeldes ermittelt und direkt in die SQL-Anweisung übergeben.

    2) Du übergibst den Parameter artgerecht, siehe
    Parameterabfrage per VBA öffnen
    Insert oder Update als Parameter-Abfrage
     
  6. Hallo zusammen,

    in Ergänzung des bereits Geschriebenen:
    Das konkrete Problem besteht in dem Formularfeldbezug in der Abfrage.
    Durch die Verwendung der Eval-Funktion kannst du den Formularbezug
    beibehalten und das Problem umgehen.
    Siehe: FAQ 6.4

    Nun hast du mehrere Lösungsansätze; suche die den 'besten' aus. *wink.gif*
     
    Marsu65, 26. Januar 2015
    #6
  7. Hallo an alle Helfer!

    Vielen lieben Dank für Eure vielen und ausführlichen Tipps.
    Konnte viel dabei mitnehmen.

    Am Ende entschied ich mich für die "Eval"-Funktion, da diese, für mich, am einfachsten umzusetzen ist.

    Es klappt wunderbar! Nun kann das Projekt weitergehen.

    Vielen Dank & schöne Grüße
     
    Grummel13, 26. Januar 2015
    #7
Thema:

Anfügeabfrage per VBA ausführen

Die Seite wird geladen...
  1. Anfügeabfrage per VBA ausführen - Similar Threads - Anfügeabfrage VBA ausführen

  2. Anfügeabfrage- schon vorhandene Datensätze überspringen

    in Microsoft Access Hilfe
    Anfügeabfrage- schon vorhandene Datensätze überspringen: Guten Tag, ich habe eine Anfügeabfrage erstellt, welche die Daten von einer Excel Verknüpfung in Access in eine identische Tabelle der DB importiert. Die Anfügeabfrage soll nun die Datensätze aus...
  3. Anfügeabfrage Gültigkeitsverletzungen

    in Microsoft Access Hilfe
    Anfügeabfrage Gültigkeitsverletzungen: Hallo zusammen, ich habe eine Anfügeabfrage, die etwa 1000 Datensätze mit 30 Feldern anfügen soll, und erhalte anschließend die Meldung, dass X Datensätze nicht angefügt werden können wegen einer...
  4. Anfügeabfrage läuft ins Leere.

    in Microsoft Access Hilfe
    Anfügeabfrage läuft ins Leere.: Moin, folgendes Problem: Ich habe eine Anfüge abfrage die Daten aus 3 Tabellen zusammen bringt. Nun habe ich ein Berechnetes Feld in einer anderen Abfrage gebaut und möchte diesen wert auch über...
  5. Anfügeabfrage per VBA

    in Microsoft Access Hilfe
    Anfügeabfrage per VBA: Hallo, ich habe eine Anfügeabfrage, bei der ich mit Ausführen per VBA folgende Fehlermeldung erhalte: 1 Parameter wurde erwartet, es wurden aber zu wenig Parameter übergeben. Folgender Code...
  6. Anfügeabfrage = Schlüsselverletzung

    in Microsoft Access Hilfe
    Anfügeabfrage = Schlüsselverletzung: Guten Abend, ich bearbeite derweil kleinere Aufgaben um den Umgang mit Access 2010 zu lernen (für den ECDL Advanced). Dabei bin ich auf eine simpel wirkende Aufgabe gestoßen, die ich gerne ohne...
  7. Häufige Fehler beim Ausführen einer Anfügeabfrage

    in Microsoft Access Tutorials
    Häufige Fehler beim Ausführen einer Anfügeabfrage: Häufige Fehler beim Ausführen einer Anfügeabfrage Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Mehr......
  8. Hinzufügen von Datensätzen zu einer Tabelle mit einer Anfügeabfrage

    in Microsoft Access Tutorials
    Hinzufügen von Datensätzen zu einer Tabelle mit einer Anfügeabfrage: Hinzufügen von Datensätzen zu einer Tabelle mit einer Anfügeabfrage Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access...

Users found this page by searching for:

  1. vba anfügeabfrage ohne nachfrage

  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden