Forum

Αναζήτηση στο ms-office.gr

Πάμε!
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > Χειρισμός χρονικών διαστημάτων

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 21-10-13, 15:58
Όνομα: Παύλος
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 15-03-2013
Μηνύματα: 12
Προεπιλογή Χειρισμός χρονικών διαστημάτων

Καλησπέρα σας,

Θα ήθελα να ρωτήσω όσον αφορά στα παραδείγματα και συγκεκριμένα αυτό με θέμα "Χειρισμός χρονικών διαστημάτων" το εξής. Απομόνωσα τη μια συνάρτηση των διαστημάτων, χωρίς να αλλάξω κάτι και μου βγάζει περίεργα αποτελέσματα, όπως φαίνεται στη συνημμένη βάση.

Στη βάση φαίνεται ότι η διαφορά από 1/10/2012 έως 30/9/2013 είναι ένα έτος και 20 ημέρες. Δεν ξέρω γιατί. Συγκεκριμένα αυτό φαίνεται στον πίνακα 3Α3 και στα ID {3094320051} & {1158620251} & {534020552}.
Φαντάζομαι ότι βγαίνει λάθος σε όλα.

Μπορεί να με βοηθήσει ο συντάκτης "kapetang" ή όποιος άλλος?

Ευχαριστώ.
Συνημμένα Αρχεία
Τύπος Αρχείου: zip Βάση δεδομένων4.zip (94,9 KB, 11 εμφανίσεις)
Απάντηση με παράθεση
  #2  
Παλιά 21-10-13, 17:32
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.156
Προεπιλογή

Καλησπέρα

Παύλο βλέποντας στα γρήγορα τη βάση σου, διαπίστωσα:

1) Το πεδίο StartDate στον πίνακα 2Α2 είναι Binary αντί Date/Time.

2) Το πεδίο StartDate στον πίνακα 2A2 έχει τιμές Null.

Όπως καταλαβαίνεις για να οριστεί ένα διάστημα χρειάζεται και η ημερομηνία έναρξης και η ημερομηνία λήξης.

3) Δε χρησιμοποιείς σωστά τη συνάρτηση, ενώ έχει 3 παραμέτρους την καλείς με 2 ορίσματα.

Πρόσθεσα στη ΒΔ τον πίνακα Test με StartDate=1/10/2012 και EndDate=30/9/2013.

Στο ερώτημα qryTest μπορείς να δεις το χρονικό διάστημα σε έτη, μήνες και μέρες.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: zip Βάση δεδομένων5.zip (114,0 KB, 30 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 22-10-13 στις 09:47. Αιτία: αντί 3Α3 αλλαγή σε 2Α2
Απάντηση με παράθεση
  #3  
Παλιά 22-10-13, 09:50
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.156
Προεπιλογή

Καλημέρα

Παύλο, η συνάρτηση DateDiffToYMD μπορεί να κληθεί με δύο μορφές:

1) Στη μορφή DateDiffToYMD(Per, StartDate, EndDate) η τελική ημερομηνία πρέπει να είναι μεγαλύτερη από την αρχική.

Είναι η μορφή που πρέπει να εφαρμόσεις.

2) Στη μορφή, που εφάρμοσες, DateDiffToYMD(Per, StartDate) ως τελική ημερομηνία λαμβάνεται (στον κώδικα) η τρέχουσα.

Η μορφή αυτή είναι κατάλληλη πχ για τον προσδιορισμό της ηλικίας, όπου η τελική ημερομηνία συνεχώς μετατοπίζεται.

Φιλικά/Γιώργος
Απάντηση με παράθεση
  #4  
Παλιά 23-10-13, 18:48
Όνομα: Παύλος
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 15-03-2013
Μηνύματα: 12
Προεπιλογή

Ευχαριστώ πολύ Γιώργο.
Απάντηση με παράθεση
Απάντηση στο θέμα

Εργαλεία Θεμάτων
Τρόποι εμφάνισης

Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
Χειρισμός χρονικών διαστημάτων kapetang Access samples - Χρήσιμα αρχεία & παραδείγματα 0 04-12-12 11:01


Η ώρα είναι 05:52.