Office: Access SQL Abfrage über Formular erstellen ?

Helfe beim Thema Access SQL Abfrage über Formular erstellen ? in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hi, mal ne ganz doofe Frage ist es möglich eine SQL Abfrage über ein Formular Feld zu generieren? Also ich stelle mir das so vor ich habe ein... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von pimp0r, 19. Juli 2004.

  1. Access SQL Abfrage über Formular erstellen ?


    Hi,


    mal ne ganz doofe Frage ist es möglich eine SQL Abfrage über ein Formular Feld zu generieren?


    Also ich stelle mir das so vor ich habe ein Formular und dort drop down Felder dort kann ich Kriterien aus einer Tabelle aussuchen und dann eine Abfrage Starten so in etwa wie eine Filter Funktion geht das irgendwie ???


    Oder hat jemand eine bessere Idee ?

    Ich habe eine Tabelle mit einem Datum und so ungefähr 40 Abfragen die immer die Daten aus dem aktuellen Monat und dem aktuellem Jahr Filtern.

    Jetzt kann es aber sein das meine Kollegen mal die Daten aus dem Vormonat brauchen und darum dachte ich, ich baue noch mal einen Filter ein oder so was vielleicht kann mir jemand einen Gedanken Anstoß oder einen Link geben ???



    Vielen Dank euch

    :)
     
    pimp0r, 19. Juli 2004
    #1
  2. hi,

    das ist ganz einfach - du setzt dein sql-statement einfach aus strings zusammen. dazu ist´s am einfachsten, wenn du dir die abfrage mal einfach im editor zusammenstellst, dann auf die sql-ansicht klickst und dir das zeug kopierst. das schreibst du dann in VBA in eine variable (vom typ string) und fügst deine kritererien anhand der eingaben im formular dazu.

    also z.b. wenn dein sql so aussieht (deins wird vermutlich etwas "mehr" sein, aber für ein beispiel reicht das hier *wink.gif* ):
    Code:
    dann sieht das in VBA ca. so aus (semikolon weglassen, du willst ja noch kriterien dazufügen):
    Code:
    dann holst du dir aus dem formular deine kriterien - nehmen wir mal an, Feld1 ist der Nachname und du möchtest nur einen bestimmten rausfiltern (Nachname ist ein Text, deshalb brauchst du die einfachen Hochkommas, für Datumswerte musst es so formatieren: #yyyy/dd/mm#):
    Code:
    und dann fehlt eigentlich nur noch das setzen dieser abfrage als datenquelle für dein listenfeld, unterformular oder was auch immer du zum anzeigen verwendest. ich nehme jetzt einfach mal ein listenfeld als beispiel her:
    Code:
    lg spinneken
     
    spinneken, 20. Juli 2004
    #2
  3. Hi,

    ja das geht und ist ziemlich flexibel. Nimm dazu am Einfachsten den SQL-String aus der Abfrage und verändere die WhereCondition, so wie du sie benötigst. Ein einfaches Beispiel habe ich leider nicht parat.
     
    J_Eilers, 20. Juli 2004
    #3
  4. Access SQL Abfrage über Formular erstellen ?

    Super Danke !

    Kann ich das Ergebnis der Abfrage auch als Excel Datei ausgeben ?
     
    pimp0r, 20. Juli 2004
    #4
  5. Fragt sich zwar wozu, aber ja. Entweder mit DoCmd.TransferSpreadsheet oder du öffnest Excel per Code und schreibst die Daten dann in ein Arbeitsblatt.
     
    J_Eilers, 20. Juli 2004
    #5
  6. Sorry aber ich bin der Totale Amateur !

    Also ich erstelle jetzt meine SQL mit VBA OK

    Ich möchte alle Spalten angezeigt haben und dann hab ich im Formular zum Beispiel 2 Felder eins heißt Werk0 und ein heißt Datum !

    Würde das dann so aussehen ???


    DIM strSQL as String
    strSQL = "SELECT * FROM Stammdaten"

    strSQL = strSQL & " WHERE Werk0='" & Me.FormularKritFeld & "';"
    strSQL = strSQL & " WHERE Datum='" & Me.FormularKritFeld & "';"


    muss ich das Datum irgendwie Formatieren ?

    und noch eine Frage ich muss das Text Feld dann den Namen geben den ich hier im VBA angebe oder ?

    Und das ganze speicher ich dann als Modul und verknüpfe das dann mit einem Button oder wie ?

    Also wie gesagt ich bin der absolute Access Amateur vielleich kann mir noch einmal jemand meine Fragen beantworten das wäre Super von euch



    DANKE !

    Ach und noch was ich check das mit den Modulen überhaupt nich kann mir dazu einer vielleicht ne Quelle schicken wie ich das genau machen muss ?


    *frown.gif* ich bin bestimmt nervig was ?
     
    pimp0r, 20. Juli 2004
    #6
  7. Erstelle einen Button im Formular und gehe dort in Eigenschaften / Ereignis. Dort kannst du beim Klicken auswählen und den Code-Generator verwenden. Damit wird dann eine Prozedur in VBA im Klassenmodul des Formulars erstellt. Und der dort stehende Code wird dann beim Klicken ausgeführt. Also ungefähr folgendes:

    Code:
    Um dein Vorgehen etwas zu vereinfachen würde ich eine Abfrage generieren und dort Verweise auf die Formularfelder setzen (in der entsprechenden Zeile und dort in der Kriteriumszeile auf den Zauberstab klicken und dort das entsprechende Feld im Formular auswählen). Dann anhand der Abfrage einen Bericht erzeugen und schon kannst du einen Bericht mit deinen Formularbedingungen öffnen.
     
    J_Eilers, 20. Juli 2004
    #7
  8. Access SQL Abfrage über Formular erstellen ?

    hi,

    macht nix, jeder von uns hat mal angefangen *Smilie

    also das einfachste in deinem fall ist wohl, einen button zu verwenden und dort bei OnClick eine prozedur einzufügen (wenn du in der entwurfsansicht bist, gehst du beim button auf eigenschaften, ereignisse, beim klicken, wählst [Ereignisprozedur] aus und klickst auf die punkterln daneben..)

    dort fügst du dann deinen code ein:
    (vorsicht! du hast geschrieben Werk0 und Datum seien formularfelder - dann baust du nämlich das sql-statement falsch zusammen!)
    Code:
    datumswerte brauchen "spezielle" behandlung - die #-zeichen am beginn und ende, sowie das amerikanische datumsformat.

    dein sql-statement sieht im endeffekt dann z.b. so aus:
    Code:
    ein tipp: verwende für feldnamen etc. keine schlüsselwörter (also Datum, Date, etc. nicht verwenden, sondern stattdessen z.b. datAufnahme, datEnde,...)

    ich hoffe, ich hab nicht allzu konfus geschrieben *wink.gif*
    lg spinneken
     
    spinneken, 20. Juli 2004
    #8
  9. \@spinneken Da ist ein ";" zu viel im mittleren Teil des SQL-Statements *wink.gif* '" & Me.Werk0 & "';"
     
    J_Eilers, 20. Juli 2004
    #9
  10. *ups* stimmt - zuviel copy & paste *wink.gif*
     
    spinneken, 20. Juli 2004
    #10
  11. Hi,


    ich schon wieder hab nochmal eine Frage !

    Ich hab jetzt ein Formular erstellt und 2 Text Felder eingefügt das eine heißt Text 0 das andere Text 2 !

    Wenn ich jetzt ein Button einfüge und dann als Ereignis den Code eingebe müsste das dann fiunktionieren ?


    Option Compare Database
    Option Explicit


    Private Sub Befehl10_Click()

    Dim strSQL As String

    strSQL = "SELECT * FROM Stammdaten "

    strSQL = strSQL & "WHERE Werk0 = '" & Me!Text0 & "' AND Datum = "
    strSQL = strSQL & Format(Me!Text2, "\#yyyy\-mm\-dd\#")

    DoCmd.TransferSpreadsheet

    End Sub



    am Ende möchte ich ja das er das als Excel ausspuckt geht das so ?

    Ich weiß ja auch net ?

    Danke für jede Hilfe
     
    pimp0r, 21. Juli 2004
    #11
  12. z.b.
    Code:
    lg sp
     
    spinneken, 21. Juli 2004
    #12
  13. Access SQL Abfrage über Formular erstellen ?

    Nein, das geht so nicht.

    Entweder übergibst du das SQL-Statement an eine gespeicherte Abfrage und verwendest danach TransferSpreadsheet (da fehlt noch Syntax) oder du öffnest mit dem String ein Recordset, rufst Excel auf und schreibst dann 2 dimensional die Daten in Excel.

    Hat es eine besondere Bewandnis, dass die Daten nach Excel transferiert werden sollen?

    Aus der Hilfe:

    Von welcher Version reden wir?
     
    J_Eilers, 21. Juli 2004
    #13
  14. Ja so würde es wohl gehen jetzt hab ich nur noch ein Problem mit dem Datum *frown.gif*


    Ich hab ein anderes Format *frown.gif*

    ich hab Tag/Monat/Jahr kann ich das auch benutzen irgendwie ?
     
    pimp0r, 21. Juli 2004
    #14
  15. Ist dein Datum ein Text? Ansonsten speichert Access das Datum in einem anderen Format, als es angezeigt wird.
     
    J_Eilers, 21. Juli 2004
    #15
Thema:

Access SQL Abfrage über Formular erstellen ?

Die Seite wird geladen...
  1. Access SQL Abfrage über Formular erstellen ? - Similar Threads - Access SQL Abfrage

  2. Abfrage mit den jüngsten Einträgen erstellen

    in Microsoft Access Hilfe
    Abfrage mit den jüngsten Einträgen erstellen: Hallo liebe Experten, ich bastel gerade an einer Access-Datenbank für die Besuche meiner Klienten. Aus meiner Tabelle "KlientenT" und einer weiteren Tabelle mit "BesucheT" möchte ich eine Abfrage...
  3. Mit SQL-Abfragen Access-Daten in Excel übertrage

    in Microsoft Excel Hilfe
    Mit SQL-Abfragen Access-Daten in Excel übertrage: Hallo Leute, ich habe ein großes Problem an dem ich schon seit 2 Tagen sitze und nicht weiter komme. Im großen und ganzen versuche ich von EXCEL-VBA aus eine Select-Anweisung zu schreiben,...
  4. Access SQL Abfrage

    in Microsoft Access Hilfe
    Access SQL Abfrage: Guten MOrgen, ich bin grade etwas unglücklich über meine SQL Abfrage Code: SELECT MITGLIED.NAME, MITGLIED.VORNAME, MITGLIED.AUSWEISNR, FucAlter([Mitglied].[Geburtstag]) AS [Alter],...
  5. MS Access Abfrage mit NZ -> IsNull funktioniert in MS SQL Nicht

    in Microsoft Access Hilfe
    MS Access Abfrage mit NZ -> IsNull funktioniert in MS SQL Nicht: Hallo Leute Also ich hab ne Abfrage mit verschatelten Abfragen. Funktioniert sowei so gut ohne probleme in Access. Denn in Access mit der Funktion NZ(xy,0) werden alle Daten der haupttabelle...
  6. Abfrage mit Datum von Access an MS SQL

    in Microsoft Access Hilfe
    Abfrage mit Datum von Access an MS SQL: Hallo, ich finde keine Lösung für eine Abfrage aus einem Access Front-End an eine MS SQL Datenbank: Code: myDay = Now() - getDays.Value myDay = Format(myDay, "YYYY-MM-DD HH:MM:SS") sqlString =...
  7. SQL Abfrage in Access mit Kommentar versehen

    in Microsoft Access Hilfe
    SQL Abfrage in Access mit Kommentar versehen: Hallo, ich habe folgendes Problem, in der Datenbankanwendung bei uns wird per Abfrage auf DB2-Tabellen zugegriffen, ich würde gerne für meine Vertretung in den Abfragen Kommentare einfügen. Wenn...
  8. SQL: Fehler in der Abfrage

    in Microsoft Access Hilfe
    SQL: Fehler in der Abfrage: Hallo Leute, ich bin gerade am basteln einer SQL Abfrage, bin aber noch ein ziemlicher Neuling. Der Aufbau ist grob SELECT A.b, B.c, D.e, F.g FROM F RIGHT JOIN D RIGHT JOIN B RIGHT JOIN A ON...
  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