Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
Υπολογισμός υπολοίπου ανά γραμμή σε μία φόρμα
Γεια χαρά , Γνωρίζει κανεις πως μπορώ να έχω το υπόλοιπο ανά γραμμή; Δηλαδή ΧΡΕΩΣΗ ΠΙΣΤΩΣΗ ΥΠΟΛΟΙΠΟ 100 0 100 150 0 250 0 100 150 200 0 350 .... .... ..... .... .... ..... |
#2
| |||
| |||
Καλησπέρα Διονύση, αν η ΒΔ έχει κατάλληλη δομή, η υλοποίηση του ζητούμενου είναι αρκετά απλή. Αν υποθέσουμε ότι: 1) Η ΒΔ περιέχει τον πίνακα «ΤΑΜΕΙΟ» με πεδία [ΗΜΕΡΟΜΗΝΙΑ], [ΧΡΕΩΣΗ] και [ΠΙΣΤΩΣΗ]. 2) Τα πεδία [ΧΡΕΩΣΗ] και [ΠΙΣΤΩΣΗ] σχεδιάζονται ώστε να μη δέχονται NULL τιμές (ορίζονται υποχρεωτικά με προεπιλεγμένη τιμή μηδέν (0)). 3) Η δεσμευμένη συνεχής φόρμα περιέχει τα παραπάνω πεδία και επιπλέον ένα αδέσμευτο πλαίσιο κειμένου με όνομα [ΥΠΟΛΟΙΠΟ]. Θα αρκούσε να βάλουμε στην ιδιότητα «Προέλευση στοιχείου ελέγχου» του πλαισίου τον τύπο: =DSum("[ΧΡΕΩΣΗ]-[ΠΙΣΤΩΣΗ]";"ΤΑΜΕΙΟ";"[ΗΜΕΡΟΜΗΝΙΑ]<=#" & Format([ΗΜΕΡΟΜΗΝΙΑ];"mm/dd/yyyy") & "#"). Έτσι σε κάθε ημερομηνία το πλαίσιο κειμένου θα εμφάνιζε το υπόλοιπο, λαμβάνοντας υπόψη όλες τις χρεώσεις και πιστώσεις μέχρι και τη συγκεκριμένη ημερομηνία. Για να είναι πιο λογική και κατανοητή η εμφάνιση των στοιχείων, οι εγγραφές της φόρμας θα πρέπει να είναι ταξινομημένες κατά την ημερομηνία σε αύξουσα σειρά. Φιλικά/Γιώργος |
#3
| |||
| |||
Σωστός!!!
Καλημέρα ..... Ευχαριστώ για την απάντησή σου Η Dsum δουλεύει καλά αλλά μου δημιουργεί πρόβλημα όταν στην ίδια ημερομηνία έχω περισσότερες από μία εγγραφές Σου επισυνάπτω ενα word file με την φόρμα των αποτελεσμάτων. Αυτό που χαρακτηρίζει την μοναδικότητα κάθε εγγραφής είναι ο Κωδικός Παραγγελίας [ΚωδΠαραγγελίας] ο οποίος αν χρησιμοποιηθεί στην DSum πιστεύω ότι θα λύσει το πρόβλημα. Διονύσης |
#4
| |||
| |||
Καλημέρα Αν το πρωτεύον κλειδί αυξάνεται με την ημερομηνία, θα μπορούσες να χρησιμοποιήσεις τον τύπο: =DSum("[ΧΡΕΩΣΗ]-[ΠΙΣΤΩΣΗ]";"ΤΑΜΕΙΟ";" [ID]<=" & [ID]). Διαφορετικά χρησιμοποίησε τον τύπο: =DSum("[ΧΡΕΩΣΗ]-[ΠΙΣΤΩΣΗ]";"ΤΑΜΕΙΟ";"[ΗΜΕΡΟΜΗΝΙΑ]<#" & Format([ΗΜΕΡΟΜΗΝΙΑ];"mm/dd/yyyy") & "# OR ([ΗΜΕΡΟΜΗΝΙΑ]=#" & Format([ΗΜΕΡΟΜΗΝΙΑ];"mm/dd/yyyy") & "# AND [ID]<=" & [ID] & ")"). Προσθήκη Στην πρώτη περίπτωση η ταξινόμηση θα γίνει με το πρωτεύον κλειδί. Στη δεύτερη πρώτα με την ημερομηνία και μετά με το πρωτεύον κλειδί. Φιλικά/Γιώργος Τελευταία επεξεργασία από το χρήστη kapetang : 15-03-13 στις 11:44. Αιτία: Προσθήκη |
#5
| |||
| |||
ΣΩΣΤΟΣ!!!!!
Καταπληκτικά , Ευχαριστώ Γιώργο. Δούλεψε με την δεύτερη DSum. Αν μπορείς να μου εξηγήσεις λιγάκι πως δουλεύει στην DSum το τμήμα των κριτηρίων με τις ημερομηνίες και τα format. Στο πρόγραμμα που έχω φτιάξει χρησιμοποιώ την DSum αλλα σε απλή μορφή , με OR και AND όχι όμως με ημερομηνίες. Αν θέλεις , εξηγησέ μου πως δουλεύει. Και πάλι ευχαριστώ Διονύσης |
#6
| |||
| |||
Καλησπέρα Ένας τρόπος για να αναγνωρίζονται σωστά, από την VBA, οι ημερομηνίες στα κριτήρια των ερωτημάτων και των συγκεντρωτικών συναρτήσεων τομέα (Dsum, DCount, κλπ) είναι να περιβάλλονται από το σύμβολο # και να έχουν την αμερικάνικη μορφή (μήνας/ημέρα/έτος = “mm/dd/yyyy”). Ακολουθώντας τον παραπάνω κανόνα, στα κριτήρια των συναρτήσεων Dsum, που πρότεινα, περικλείω την ημερομηνία σε #, αφού τη μετατρέψω σε αμερικάνικη μορφή με τη συνάρτηση Format. Φιλικά/Γιώργος |
#7
| |||
| |||
ΚΑΤΑΝΟΗΤΟ
Κατανοητό αλλά ,,,, προσπαθώ να επεκτείνω περαιτέρω την σειρά ταξινόμησης χρησιμοποιώντας άλλο ένα πεδίο [ΚωδΦύσης]. Δηλαδή , να υπολογίζει το υπόλοιπο ανα γραμμή με βάση την ημερομηνία , αν στην ίδια ημερομηνία υπάρχουν περισσότερες απο μία εγγραφές τότε να χρησιμοποιεί και τον [ΚωδΠαραγγελίας] (μέχρι εδώ εν τάξει). Θέλω όμως , σε αυτό το σημείο να δώσω προταιρεότητα στην χρέωση και μετά στην πίστωση. Η χρέωση και η πίστωση αντιπροσωπεύονται απο το πεδίο [ΚωδΦύσης] όπου 2 είναι χρέωση και 1 είναι πίστωση. Δοκίμασα να μοντάρω στο τέλος της δικής σου DSum το παρακάτω OR ([Ημ/νίαΠαραγγελίας]=#" & Format([Ημ/νίαΠαραγγελίας];"μμ/ηη/αααα") & "# AND [ΚωδΦύσης]<=" & [ΚωδΦύσης] & Χωρίς επιτυχία Μπορώ να προσθέσω και άλλο σκέλος στην DSum ώστε να ελέγχει και το πεδίο [ΚωδΦύσης] πάντα σε σχέση με την ημερομηνία (αλλά και με τον [ΚωδΠαραγγελίας]); Δεν ξέρω αν κατάλαβες τι ακριβως εννοώ!!!! Οπως και να 'χει σ ευχαριστώ και πάλι για την πολύτιμη βοήθειά σου.. Διόνυσος |
#8
| |||
| |||
Καλησπέρα Χωρίς να αλλάξεις την Dsum που λειτουργεί, δοκίμασε να ταξινομήσεις τις εγγραφές σε αύξουσα σειρά ως προς την ημερομηνία, σε φθίνουσα ως προς το πεδίο [ΚωδΦύσης] και σε αύξουσα ως προς το πεδίο [ΚωδΠαραγγελίας]. Ίσως δουλέψει. Αν ανέβαζες ένα δείγμα της ΒΔ (φόρμα με τα υποκείμενα ερωτήματα και πίνακες) θα διευκόλυνες τα μέλη να κατανοήσουν το ζητούμενου, να δοκιμάσουν τις ιδέες τους και να βοηθήσουν. Φιλικά/Γιώργος |
#9
| |||
| |||
Καλησπέρα. Θα μπορούσε κάποιος να βοηθήσει. ποιον τύπο θα χρησιμοποίησω για να έχω στην ίδια γραμμή το υπόλοιπο. Θέλω έναν απλό τύπο χωρίς κωδικούς και ημερομηνίες. Ευχαριστώ. ΧΡΕΩΣΗ ΠΙΣΤΩΣΗ ΥΠΟΛΟΙΠΟ 10 2 8 5 0 13 5 10 8 |
#10
| |||
| |||
Καλημέρα Κωνσταντίνε, καλωσόρισες στην παρέα μας. Για να βρούμε το υπόλοιπο σε κάποια γραμμή, θα πρέπει να βρούμε το άθροισμα των διαφορών [ΧΡΕΩΣΗ]-[ΠΙΣΤΩΣΗ], της τρέχουσας γραμμής και όλων των προηγούμενων. Στον τύπο συνεπώς του αθροίσματος (Dsum) των διαφορών, θα πρέπει να υπάρχει και ένα κριτήριο για των προσδιορισμό της τρέχουσας και των προηγούμενων εγγραφών. Ο ευκολότερος τρόπος να οριστεί το κριτήριο είναι με τη βοήθεια κωδικών ή ημερομηνιών. Κατά τη γνώμη μου αυτό που ζητάς «έναν απλό τύπο χωρίς κωδικούς και ημερομηνίες» είναι αδύνατο να γίνει. Φιλικά/Γιώργος Τελευταία επεξεργασία από το χρήστη kapetang : 19-05-16 στις 18:49. Αιτία: τον-->των |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
Παρόμοια Θέματα | ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[Συναρτήσεις] Συνάρτηση για υπολογισμό υπολοίπου | zana | Excel - Ερωτήσεις / Απαντήσεις | 3 | 21-04-15 18:50 |
[ Φόρμες ] Υπολογισμός ποσού σε φόρμα και μεταφορά στον αντίστοιχο πίνακα | ΔΙΟΝΥΣΙΟΣ | Access - Ερωτήσεις / Απαντήσεις | 16 | 25-12-14 19:40 |
[ Εκθέσεις ] Αλλαγής σελίδας και μεταφοράς υπολοίπου | teotrip603 | Access - Ερωτήσεις / Απαντήσεις | 19 | 24-11-14 16:04 |
[VBA] Μεταφορά υπολοίπου | tecgeo | Excel - Ερωτήσεις / Απαντήσεις | 1 | 03-01-13 22:32 |
Ενημέρωση Υπολοίπου | Χρήστος | Access - Ερωτήσεις / Απαντήσεις | 2 | 14-05-12 16:22 |
Η ώρα είναι 06:59.