Office: Abfrage verändern via VBA/SQL

Helfe beim Thema Abfrage verändern via VBA/SQL in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Servus Weiss jemand von euch, wie ich eine Abfrage dynamisch mit vba oder sql verändern kann. D.h. ich möchte mit VBA auf die jeweiligen Felder... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Damian, 6. Juni 2004.

  1. Abfrage verändern via VBA/SQL


    Servus

    Weiss jemand von euch, wie ich eine Abfrage dynamisch mit vba oder sql verändern kann. D.h. ich möchte mit VBA auf die jeweiligen Felder einer Abfrage zugreifen können und so das Kriterium ändern. So möchte ich dynamische Abfragen machen. Ideen?

    Gruss

    Damian

    :)
     
    Damian, 6. Juni 2004
    #1
  2. Hi,

    das geht mit den QueryDefs. Dort kann man die SQL-Syntax verändern.
     
    J_Eilers, 7. Juni 2004
    #2
  3. Kannst du mir näheres um Querydefs geben? Links? Code? oder weitere Erläuterungen?

    Gruss Damian
     
    Damian, 7. Juni 2004
    #3
  4. Abfrage verändern via VBA/SQL

    In etwa so:

    Code:
    Damit wird der SQL Code in einer MsgBox dargestellt. Du kannst hier aber auch folgendes schreiben um den Inhalt zu überschreiben:

    Code:
     
    J_Eilers, 7. Juni 2004
    #4
  5. Merci, so sehe ich also der SQL Code der Abfrage, jedoch wie kann ich sie steuern/verändern? Habe dies gemacht, geht jedoch nicht wirklich?

    Code:
    Gruss Damian
     
    Damian, 7. Juni 2004
    #5
  6. Warum poste ich eigentlich den Code? Ist selbstständiges Denken so schwer? *rolleyes.gif*

    Code:
    Edit: *rolleyes.gif*
     
    J_Eilers, 7. Juni 2004
    #6
  7. Dein SQL-String sollte in "" eingefasst sein. In etwa so:

    Code:
     
    Streetshark, 7. Juni 2004
    #7
  8. Abfrage verändern via VBA/SQL

    Hallo J_Eilers

    Merci erstmals (trotz deiner Aroganz)

    Ich glaube aber du hast mich falsch verstanden.
    Ich habe ein Formular dessen Datenherkunft eine Abfrage ist. Nun möchte ich das Abfrage Kriterium ändern. Dein Code gibt mir in einer MsgBox den SQL Code der Abfrage an. Auch schön. Ich möchte aber das Kriterium (9010) verändern?
    Kommst jetz nach? Habe ein Feld x in dem ich das Kriterium schreibe, per Klick(Ereignisprozedur) verändere ich das Kriterium, das heisst im Kriterium steht dann neu der Wert des Feldes x.

    Danach sollte mir dei Abfrage allle DS zeigen, die das Kriterium des Feldes x besitzt!

    ?

    Gruss und herzlichen Dank

    Damian
     
    Damian, 8. Juni 2004
    #8
  9. Hallo Damian,

    in meiner Signatur findest du einen Link "Es funtz nicht..." vielleicht schaust du ihn dir mal an. Es mag sich arrogant anhören, aber wenn du mal in meine Lage kommst, dann wirst du dir vielleicht auch Gedanken machen, warum man so etwas eigentlich noch schreibt.

    Da du dein Problem jetzt deutlich definiert hast rate ich dir von den QueryDefs ab und würde in der Abfrage selbst einen Bezug auf das Formularfeld erstellen. Gehe dazu in die Entwurfsansicht der Abfrage, in die entsprechende Spalte und dort in die Kriteriumszeile. Nun klickst du auf den Zauberstab und kannst dort das Formular und das Feld auswählen. Vielleicht auch noch ein Wie "*" oder ähnliches einbauen.

    Dann brauchst du im Klick-Ereignis (ich würde doch eher nach Aktualisierung verwenden) nur noch ein Requery des Formulars, welches ich dir jetzt auch noch auf dem Silbertablett präsentiere:

    Code:
     
    J_Eilers, 8. Juni 2004
    #9
  10. Merci, begreif ich schon, geht mir in anderen Themen auch so.
    Funkzt perfekt, Thanks.

    Da du ja aber wie ich sehe ein VBA Crack bist, wollte ich dich noch fragen ob du weisst ob und wie ich das Kriterium eines einzelnen Feldes einer Abfrage ansteuen kann. Dass heisst ich möchte auswählen, bei welchem Abfrage Feld (im Bsp. "PLZ") ich das Kriterium setze!
    ( D.h. ich möchte das Formularfeld z.b.[Formulare]![Abfrage]![Abfrag] dynamisch in von mir ausgewählte Abfrage felder kriteriumzeilen einführen)Also diesen Teil:
    Kommst nach?

    Gruss
    Damian
     
    Damian, 8. Juni 2004
    #10
  11. Ich komme nicht nach, ich bleib im Tal und am Meer.

    Schau dir mal das Abhängigkeitsbeispiel an. Dort wird soetwas "halbdynamisch" auch anders gelöst.

    Aus dem RecordSource-Beispiel kannst du auch erkennen, wie man sich so ein variables SQL-Statement zusammensetzen kann. Dieses musst du dann an die Abfrage übergeben. Und zwar so, wie oben beschrieben.

    Code:
    Damit wird der Inhalt der Variablen strSQL an die Abfrage übergeben und als SQL-Syntax dort geschrieben.
     
    J_Eilers, 8. Juni 2004
    #11
  12. Also ich versuchs nochmals,

    Habe eine Abfrage (siehe bild), in der Spalte rot habe ich bei der Kriteriumszeile nun den Namen meines Feldes ([Formulare]![Abfrage]![Abfrag]) angegeben. Ich möchte nun aber z.b. mit einem Auswahlfeld bestimmen, in welche Spalte ich mein Kriterium (also Wert in [Formulare]![Abfrage]![Abfrag]) anwende. Z.b grüne Spalte. Somit möchte ich die abzufragende Spalte beliebig wechseln. So muss ich nicht für jede kleine Abfrage eine neue Abfrage erstellen, sondern kann sie über eine Abfragetabelle machen.

    Gruss
     
    Damian, 8. Juni 2004
    #12
  13. Abfrage verändern via VBA/SQL

    Liest du auch was ich schreibe?

    Genau das wird dort gemacht und so habe ich es erklärt.

    Erstelle dir eine Variable, die die entsprechenden Syntax enthält und übergib diese mittels QueryDefs an die Abfrage.
     
    J_Eilers, 8. Juni 2004
    #13
Thema:

Abfrage verändern via VBA/SQL

Die Seite wird geladen...
  1. Abfrage verändern via VBA/SQL - Similar Threads - Abfrage verändern via

  2. Abfrage: Anzahl von Kriterium >0

    in Microsoft Access Hilfe
    Abfrage: Anzahl von Kriterium >0: Hallo, [ATTACH] Ich versuche gerade, die Anzahl der belegten Plätze auf einem LKW per Abfrage zu ermitteln. Dabei wäre dann FSPal > 0. Leider zeigt er mir die Anzahl der Plätze an. [ATTACH]...
  3. Teil des Zellinhaltes abfragen in VBA

    in Microsoft Excel Hilfe
    Teil des Zellinhaltes abfragen in VBA: Guten Tag, ich möchte in Zelle E1 den linken 4-stelligen Teil in Zelle A3 abfragen. Habs versucht mit IF (LEFT(R[2]C[-3],4) = "8396") then ... Else ... End If Wer kann...
  4. Verliert irgendwann die Selektive Abfrage von UFO

    in Microsoft Access Hilfe
    Verliert irgendwann die Selektive Abfrage von UFO: Guten Tag Ich habe ein HF mit darin befindlichem UF. Die Abfrage der Teilnehmer im Uf bezieht sich immer auf den Kurs-Typ im HF Solang ich das Formular neu erstelle, funktioniert das...
  5. automatische Abfrage URL via Artikelnummer

    in Microsoft Access Hilfe
    automatische Abfrage URL via Artikelnummer: Guten Tag Bei der Aktualisierung der Homepage und aufgrund eines Plugin-Wechsels des Üebersetzungstools hat wordpress alle Permalinks der Produkte verändert. Unserem Webmaster war nicht bekannt,...
  6. Vorkommen von Kunden in mehreren Tabellen per Abfrage filtern

    in Microsoft Access Hilfe
    Vorkommen von Kunden in mehreren Tabellen per Abfrage filtern: Hallo Community, ich habe folgendes Problem beim Nutzen einer Access-Datenbank. Zunächst die Datenstruktur: [ATTACH] Dies sind die Tabellen meiner Datenbank. In der Tabelle "Adressliste"...
  7. mit String aus Formular Übereinstimmung in Abfrage prüfen

    in Microsoft Access Hilfe
    mit String aus Formular Übereinstimmung in Abfrage prüfen: Hallo liebe Mitglieder Ich verzweifle wieder einmal fast und wende mich an Euch. Ich möchte gern aus einem Formular heraus (Click) prüfen, ob übereinstimmende Datensätze in einer Abfrage vorhanden...
  8. In Abfragen Werte verändern

    in Microsoft Access Hilfe
    In Abfragen Werte verändern: Hallo, ich habe ein Problem, das man aufeinmal bei Abfragen keine Werte mehr ändern kann, was vorher möglich war. In den Tabellen direkt ist das weiterhin möglich, Werte zu ändern. Leider weiss...
  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