Office: (Office 2010) Datum Parameterabfrage über VBA

Helfe beim Thema Datum Parameterabfrage über VBA in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; hallo leute, ich brauche bitte hilfe mit einer parameterabfrage über vba, die nach datum filtern soll. folgende ausgangssituation: in einem... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von MisterBurns, 14. April 2012.

  1. Datum Parameterabfrage über VBA


    hallo leute,

    ich brauche bitte hilfe mit einer parameterabfrage über vba, die nach datum filtern soll. folgende ausgangssituation:

    in einem unterformular wie auf angehängtem bild sichtbar. über das feld "angebotsnummer suchen" kann ich das tun, was der name schon sagt. mit jeder ziffer, die ich in das feld eintippe, wird die darunterliegende tabelle mehr einschränkt.

    nun wollte ich das ganze auch noch für das datum machen. deshalb habe ich zwei ungebundene felder eingefügt und als format datum, kurz gewählt. beim ereignis "bei änderung" habe ich folgenden code hinterlegt:

    Code:
    leider funktioniert das noch nicht ganz so, wie ich möchte. wenn ich nämlich jetzt über das kalenderelement im feld "datum_von" ein datum wähle, erscheint ein eingabefeld "parameterwert eingeben". dort müsste ich dann das gewünschte datum nochmals eingeben, damit die einschränkung funktioniert.
    was mache ich falsch?

    danke
    berni

    :)
     
    MisterBurns, 14. April 2012
    #1
  2. Hallo berni,

    du hast hier mindestens zwei Probleme:

    Erstens solltest du den SQL String richtig zusammenbauen:
    Code:
    Zweitens wird das Change Event schon bei jedem Tastendruck gefeuert. Wenn also der Benutzer die Taste "1" drückt, sieht deine Abfrage so aus:

    Code:
    und "1" ist kein gültiges Datum.

    Viele Grüße

    Klaus
     
    KGunder, 16. April 2012
    #2
  3. Hallo,

    ein Datum muss entweder speziell formatiert oder in eine Zahl umgewandelt werden.
    Ich bevorzuge diese Version: Code:
     
    Anne Berg, 16. April 2012
    #3
  4. Datum Parameterabfrage über VBA

    ok, ich seh schon, dass die problematik etwas umfangreicher ist. als ereignis habe ich nun lostfocus genommen, das passt besser als change.

    der weg von anne funktioniert zwar (wobei interessanterweise beim datum >= 10.04.2012 erst ab 11.04.2012 angezeigt wird). allerdings: wenn ich dann das gleiche für das feld "datum_bis" mache, ist die eingabe von "datum_von" wieder ungültig. und wenn ich dann auch noch über die angebotsnummer einschränke, ist wieder alles anders. ich brauche hier einen anderen weg. habt ihr vorschläge?
     
    MisterBurns, 16. April 2012
    #4
  5. Standardmäßig nimmt man in einem solchen Fall das AfterUpdate-Ereignis.
    das lässt darauf schließen, dass du in deiner Tabelle auch die Uhrzeit gespeichert hast, dann muss du das Datenfeld ebenfalls formatieren, bspw. so: Code:
    Du meinst, die Eingabe von "datum_von" wird nicht berücksichtigt, oder?
    Dann brauchst du ein anderes Ereignis, bspw. Button-Click, in dem alle Eingaben berücksichtigt werden, oder du schreibst eine allgemeine Funktion für alle Fälle und rufst diese im AfterUpdate der Eingabefelder auf.
     
    Anne Berg, 16. April 2012
    #5
  6. gut, ich werd das demnächst probieren! vielen dank erstmal!!!
     
    MisterBurns, 16. April 2012
    #6
  7. Hallo!

    Das gefällt mir nicht besonders.
    1. CDbl würde bei Übergabe eines Datumwertes inkl. Uhrzeit eine nicht funktionierende SQL-Anweisung erzeugen - außerdem funktioniert dieses Zahlengemurks nur dann, wenn das DBMS und VBA/Jet das gleiche Startdatum (0-Wert) haben
    2. WHERE Int(Datefeld) verhindert eine Indexnutzung

    Ich würde Datumswerte immer als Datumswerte (#yyyy-mm-dd#) in Text konvertieren, falls das überhaupt notwendig ist. - Im ersten Beitrag wurde eine Parameterabfrage erwähnt - warum muss dann noch die SQL-Anweisung zusammengestellt werden?

    mfg
    Josef
     
    Josef P., 16. April 2012
    #7
  8. Datum Parameterabfrage über VBA

    Hallo
    ich würde von beidem etwas nehmen *wink.gif*
    so
    Code:
    für dbDate kann man auch den Wert von dbDate angeben der ist 8 also
    Code:
    in StrCrit sollte so was sein:
    Anfragedatum >= #2010/01/30# oder Anfragedatum >= #2010/01/30 06:00:00#
    je nach dem was in Me!Datum_von ist

    Code:
    so hat jeder sein Hoby *Smilie

    Nur so Nebenbei:
    Dabei kann beim Austruck ein String, Date-feld oder Doubel-Wert mitgegeben werden.
    Bspl. String: “Jan.1.2011“ gibt #1/1/2011#
    Und "Januar 1.2011" #1/1/2011#
    und “ 1.Jan.2011“ gibt #1/1/2011#
    und "1.Januar.2011" gibt #1/1/2011#
    genau so wie “01.01.2011“ gibt #1/1/2011#
    und "01.01.0" gibt #1/1/2000#
    und "01.01.20" gibt #1/1/2020#
    Auch mit Zeit: "02.01.11 15:16:59" gibt #1/2/2011 15:16:59#
    Bspl. DoubleWert: “40576“ od. 40576 od. DblDat definiert als Double (02.01.2011)
    funktioniert auch (TabDatum=40576)
    Bspl. Date: Date() am 1.1.2011 gibt #1/1/2011#
    Es muss nur sicher gestellt werden das der (Ausdruck) ein gültiges Datum enthält!
     
    Lanz Rudolf, 16. April 2012
    #8
  9. Hallo zusammen,

    zuerst mal vielen Dank an alle für Ihre Hilfe.
    Mittlerweile haben sich bei mir die Anforderungen etwas geändert, daher werde ich überhaupt anders an die Sache herangehen.

    Datumsabfragen waren mir schon immer ein Gräuel und ich versuche sie meistens zu vermeiden *tongue.gif*

    Schöne Grüße
    Berni
     
    MisterBurns, 16. April 2012
    #9
  10. Hallo
    Weshalb ?
    Lies einmal hier zu Buildcriteria:
    http://dl.dropbox.com/u/46590638/ACC...unterlagen.zip
    Seite 74 u 283 ...

    und evtl. ab 269 generel zu Datum *Smilie
     
    Lanz Rudolf, 17. April 2012
    #10
Thema:

Datum Parameterabfrage über VBA

Die Seite wird geladen...
  1. Datum Parameterabfrage über VBA - Similar Threads - Datum Parameterabfrage VBA

  2. Serienbrief, Datum plus 7 Tage

    in Microsoft Word Hilfe
    Serienbrief, Datum plus 7 Tage: Hallo, ich wollte gerne in meinem Serienbrief um eine Rückantwort mit Datum bitten. Die Rückantwort soll 7 Tage nach dem aktuellen Datum erfolgen. Ich habe dazu folgendes gemacht: [ATTACH] Mein...
  3. letztes Datum finden

    in Microsoft Excel Hilfe
    letztes Datum finden: Hallo Leute, hab jetzt vergebens die KI bemüht mir eine einfache Formel zu erstellen.o_O Jetzt frag ich einfach mal hier da es ja meist besser funzt.*:)* Also: ich hab ne Tabelle in der ich in...
  4. Datum Suchen

    in Microsoft Excel Hilfe
    Datum Suchen: Hallo! Situation: In einem Formular wird ein Name einer Produktionsmaschine eingetragen. In einem anderem Textfeld steht das Lieferdatum. Bei klicken auf "Speichern" wird das Lieferdatum...
  5. Aktuelles Datum und Uhrzeit in Formular

    in Microsoft Word Hilfe
    Aktuelles Datum und Uhrzeit in Formular: Hallo, zunächst ein herzlichen Dank für die Aufnahme in diesem Forum und hoffe, dass mir jemand bei meinem Problem behilflich sein kann. Ich bin aktuell dabei ein Formular zu erstellen. Das...
  6. Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien

    in Microsoft Excel Hilfe
    Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien: Schönen guten Abend, Wie kann man am besten Summieren mit mehreren Kriterien eines soll davon das Datum sein. So das vom Aktuellen Letzten Datums Wert aus gehent die letzten Bsp. 10 Werte...
  7. Zelle farblich markieren wenn Datum

    in Microsoft Excel Hilfe
    Zelle farblich markieren wenn Datum: Hallo zusammen, ich bräuchte einmal Eure Hilfe: In einer Tabelle habe ich ein Kontrollkästchen und ein Datumsfeld. J4 Kontrollkästchen K4 Datum Durch bedingte Formatierung habe ich es so...
  8. Parameterabfrage aus 2 Spalten (Datum, Uhrzeit) zur Selektion nach Schichtsystem

    in Microsoft Access Hilfe
    Parameterabfrage aus 2 Spalten (Datum, Uhrzeit) zur Selektion nach Schichtsystem: Hallo zusammen, ich hoffe, ihr habt Weihnachten gut gefeiert und überstanden.*Smilie Folgendes Problem: Aktuell kann ich Daten aus einem Archiv über die Spalte "Datum" mithilfe einer...
  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