Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   [ Εκθέσεις ] Εισαγωγή ημερομηνίας από έως κατά την εκτελεσμένη της έκθεσης (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/1020-eisagogi-imerominias-apo-eos-kata-tin-ektelesmeni-tis-ekthesis.html)

george74 15-03-11 16:07

Εισαγωγή ημερομηνίας από έως κατά την εκτελεσμένη της έκθεσης
 
Καλησπέρα σε όλους και από εμένα.
Είμαι αρκετά νέος χρήστης της Access και έχω μια δυο απορίες που αφορούν τις εκθέσεις (ή report, είμαι χρήστης αγγλικού πακέτου και πιστέψτε με δουλεύοντας χρόνια αγγλικά περιβάλλοντα "ζορίστηκα" να μεταφράσω το report σε έκθεση :011:) Έχω λοιπόν ένα πίνακα με 10 πεδία εκ των οποίων το ένα είναι DATE. Θέλω να παίρνω ένα report όπου όταν το τρέχω να με ρωτάει 'από έως ημ/νια' και να μου φέρνει μόνο τις έγγραφες που είναι μέσα σε αυτές τις ημ/νιες. Επίσης θα ήθελα στην αρχή κάθε γραμμής να βάλω έναν α/α. Ευχαριστώ εκ των προτέρων για την βοήθεια.

kapetang 16-03-11 07:56

Καλημέρα

1) Θα μπορούσες να στηρίξεις την έκθεση σε ένα παραμετρικό ερώτημα με όλα τα πεδία του πίνακα, πληκτρολογώντας στην περιοχή των κριτηρίων της στήλης με την ημερομηνία την έκφραση: Between [Ημερομηνία από:] And [Ημερομηνία έως:]
2) Σε προβολή σχεδίασης της έκθεσης δίπλα στα άλλα πεδία πρόσθεσε ένα αδέσμευτο πλαίσιο κειμένου (πχ txtCount) και στο φύλλο ιδιοτήτων δώσε στις ιδιότητες «Προέλευση στοιχείου ελέγχου» και «Τρέχον άθροισμα» τιμές : =1 και Για την ομάδα, αντίστοιχα.

Φιλικά/Γιώργος

Meteora 16-03-11 09:15

Καλημέρα

Αγαπητέ Γιώργο, μπορείς επίσης-πέρα από τη λύση που πρόσφερε ο φίλος Γιώργος- να φτιάξεις ένα κουμπί στην φόρμα σου και στο συμβάν "Με το κλικ", να μεταφέρεις τον κώδικα ;

Κώδικας:


Private Sub Command1_Click()
 
    Dim SDate As Variant
    Dim EDate As Variant
 
    SDate = InputBox("Δώσε αρχική ημερομηνία", "ΕΛΕΓΧΟΣ")
    EDate = InputBox("Δώσε Τελική ημερομηνία", "ΕΛΕΓΧΟΣ")
 
 
    If Len(SDate) = 0 Or Len(EDate) = 0 Then  Αλλαγή γραμμής (υπόδειξη Τασου...) If not isDate(Sdate) or not isDate(EDate) then
        MsgBox ("Απαιτούνται κι οι δυο ημερομηνίες !"), vbInformation, "Ελεγχος"
        Exit Sub
    End If
 
    Dim sinthiki$
    sinthiki = "[imera] Between #" & Format(SDate, "mm\/dd\/yyyy") & "#" & _
            " and  #" & Format(EDate, "mm\/dd\/yyyy") & "#"
 
    DoCmd.OpenReport "Rptdokimi", acViewPreview, , sinthiki
 
End Sub

  • [imera] είναι το πεδίο ημερομηνίας σου...
  • Rptdokimi είναι το όνομα της έκθεσής σου ...
Αυτά αγαπητέ μου..

Με εκτίμηση
Νίκος Δ.

Υστερολόγιο: Η ημερομηνία αποτελεί 'αγκάθι' σε ζητήματα SQL, σύγκρισης, φιλτραρίσματος,... Αυτός είναι ο λόγος που έγραψα λίγη VBA!

george74 17-03-11 08:41

Καλημερα,
οι λυσεις σας ήταν πολυ καλές και σας ευχαριστω και τους δυο :thumbup1:

Tasos 17-03-11 09:00

Καλημέρα σε όλους!
Γιώργο καλωσόρισες στην παρέα μας!

Θα ήθελα να συμπληρώσω:

Ένας τρόπος να ελέγξουμε την ύπαρξη και την εγκυρότητα μιας ημερομηνίας ή ώρας ή και των δύο, είναι η χρήση της συνάρτησης IsDate() και επιστρέφει True ή False.
πχ.:
Κώδικας:

If IsDate(Έκφραση) Then....
ή
If Not IsDate(Έκφραση) Then....

Είναι πολύ χρήσιμη ειδικά αν η Έκφραση είναι τιμή από πεδίο που θα μπορούσε να είναι Null (επεξεργάζεται και την περίπτωση Null).


Φιλικά

Τάσος

Lefteris 04-05-11 08:39

Καλημέρα!
Μπορεί κάποιος να μού πεί αν κατι ανάλογο μπορώ να κάνω με Συναρτήσεις, στο EXCEL?


Η ώρα είναι 22:10.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2