Access και Μερικά Αθροίσματα

VB Script και κολπάκια, Excel macro, Word, Powerpoint, κτλ

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
geo87
Δημοσιεύσεις: 79
Εγγραφή: 16 Ιουν 2008 05:25
Τοποθεσία: Αθήνα

Access και Μερικά Αθροίσματα

Δημοσίευση από geo87 » 23 Οκτ 2010 22:59

Καλησπέρα σας! Επειδή προσπαθώ να βάλω σε μια τάξη τα έξοδα που έχω για να παρασκευάσω κάποια προϊόντα θα ήθελα παρακαλώ να με βοηθήσετε αν γίνεται. Το πρόβλημα μου είναι το εξής.. (αν δεν τα πω με τους όρους των προγραμματιστών σόρρυ αλλά είμαι άσχετος με τον χώρο :) ).

Έχω φτιάξει ένα σημείο στο Access με διάφορα Πεδία. Μεταξύ αυτών υπάρχουν τα πεδία Τιμή και Ημερομηνία. Στο τμήμα Τιμή βάζω τα έξοδα στο τμημα Ημ. την ημ.. Όλα αυτά φυσικά μπαίνουν βάση του προϊόντος που αγόρασα π.χ. πάει

Προϊόν 1 2,00 ευρώ 10.10.2010
Προϊόν 2 5.00 ευρώ 10.10.2010
Προϊόν 3 4,00 ευρώ 11.10.2010
Προϊόν 4 5.00 ευρώ 11.10.2010
Προϊόν 5 4,00 ευρώ 12.10.2010
Προϊόν 6 5.00 ευρώ 13.10.2010
Προϊόν 7 4,00 ευρώ 13.10.2010

Αυτό που θα ήθελα τώρα είναι να γίνεται το άθροισμα μερικώς με βάση την ημερομηνία.. :( Γίνεται κάτι τέτοιο; Για να σας δώσω να καταλάβετε να γίνεται το εξής:

10.10.2010 7.00 ευρώ
11.10.2010 16.00 ευρώ
12.10.2010 20.00 ευρώ
13.10.2010 29.00 ευρώ

Δηλαδή κάθε νέα μέρα να προσθέτει τα της προηγούμενης. :)

Επειδή είμαι άσχετος παρακαλώ να μου εξηγήσετε τι πρέπει να κάνω αν γίνεται λίγο αναλυτικά. ΕΥΧΑΡΙΣΤΩΩΩΩ συμφορουμιτες!

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Access και Μερικά Αθροίσματα

Δημοσίευση από dva_dev » 24 Οκτ 2010 10:44

Με τη sum(πεδίο) φτιάχνεις αθροίσματα. Mε την group by πεδίο/α, ομαδοποιεί αυτά που φέρνει το select με βάση αυτό το πεδίο/α που λέει το group by.

Oπότε θα έχεις κάτι σε στύλ

Κώδικας: Επιλογή όλων

SELECT SUM(τιμή) FROM πίνακας GROUP BY ημερομηνία

Άβαταρ μέλους
Nemesis_Elite
Δημοσιεύσεις: 348
Εγγραφή: 14 Μαρ 2009 22:51
Τοποθεσία: athens

Access και Μερικά Αθροίσματα

Δημοσίευση από Nemesis_Elite » 25 Οκτ 2010 21:03

αν υποθέσουμε ότι είναι όλα τα πεδία σε έναν πίνακα (ημερομηνία, τιμή, προιον) τότε
κάνε ένα ερώτημα σε sql μορφή και κανε επικόλιση τον κώδικα.
*antikatestise ta onomata
"timi"=το όνομα του πεδίου της τιμής
"date"= το όνομα του πεδίου της ημερομηνίας

αμα θες και αλλη βοηθεια για οτιδήποτε άλλο... στη διάθεση σου...
την access την είχα ξεπαρθενιάσει κάποτε :)

Κώδικας: Επιλογή όλων

SELECT SUM( "timi" ) AS "timi", "date" FROM "onoma_pinaka_test" GROUP BY "date" ORDER BY "date" ASC, "timi" ASC

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Access και Μερικά Αθροίσματα

Δημοσίευση από dva_dev » 25 Οκτ 2010 21:11

dva_dev έγραψε:Με τη sum(πεδίο) φτιάχνεις αθροίσματα. Mε την group by πεδίο/α, ομαδοποιεί αυτά που φέρνει το select με βάση αυτό το πεδίο/α που λέει το group by.

Oπότε θα έχεις κάτι σε στύλ

Κώδικας: Επιλογή όλων

SELECT SUM(τιμή) FROM πίνακας GROUP BY ημερομηνία
Ακυρο, γράψε λάθος. Τώρα πρόσεξα ότι δεν θέλεις μερικά αθροίσματα αλλά τρέχων άθροισμα.

Άβαταρ μέλους
Nemesis_Elite
Δημοσιεύσεις: 348
Εγγραφή: 14 Μαρ 2009 22:51
Τοποθεσία: athens

Access και Μερικά Αθροίσματα

Δημοσίευση από Nemesis_Elite » 25 Οκτ 2010 21:27

και εγώ άκυρο τώρα πρόσεξα ότι θες να προστήθεντε τα αθροίσματα κάθε μέρα,,, περίμενε απάντηση

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Access και Μερικά Αθροίσματα

Δημοσίευση από dva_dev » 26 Οκτ 2010 12:41

Ετσι είναι καλύτερα...

Κώδικας: Επιλογή όλων

SELECT DISTINCT ημερομηνία,
&#40;SELECT SUM&#40;τιμή&#41; FROM πίνακας π1 WHERE π1.ημερομηνία <= πίνακας.ημερομηνία&#41;
FROM πίνακας 
ORDER BY ημερομηνία
...αλλά αν ο πίνακας έχει αρκετές χιλιάδες εγγραφές δεν ξέρω αν είναι ότι καλύτερο. Ισως να είναι προτιμότερη κάποια άλλη λύση, π.χ. vba function που να υπολογίζει αυτή το running sum και να το επιστρέφει, ή κάποιο επιπλέον πεδίο στον πίνακα που να έχει το άθροισμα. Εξαρτάται από τον όγκο των εγγραφών και τις ανάγκες σου.

geo87
Δημοσιεύσεις: 79
Εγγραφή: 16 Ιουν 2008 05:25
Τοποθεσία: Αθήνα

Access και Μερικά Αθροίσματα

Δημοσίευση από geo87 » 27 Οκτ 2010 02:45

Πρώτα από όλα σας ευχαριστώ για τις απαντήσεις και χίλια σόρρυ που δεν μπόρεσα να σας απαντήσω αλλά αρρώστησα και δεν μπήκα ίντερνετ τις τελευταίες μέρες :oops:

Επίσης σόρρυ για την αναστάτωση δεν ήξερα πως λέγεται τρέχων άθροισμα. :oops: Λογικά υπολογίζονται γύρω στα 200-300 στοιχεία σε κάθε αρχείο μιας και κάθε μήνα θα βάζω φρέσκο για να μην υπάρχει πρόβλημα. Αν μπορούσατε να με βοηθήσετε θα σας ήμουν υπόχρεος. :D

Άβαταρ μέλους
Nemesis_Elite
Δημοσιεύσεις: 348
Εγγραφή: 14 Μαρ 2009 22:51
Τοποθεσία: athens

Access και Μερικά Αθροίσματα

Δημοσίευση από Nemesis_Elite » 27 Οκτ 2010 03:04

με 200-300 εγγραφές δεν έχεις πρόβλημα.

αλλιώς βάλε και άλλο πεδίο στον πίνακα για τα φιλτράρεις ανα μήνα.

Απάντηση

Επιστροφή στο “Office, Excel, Word VB Scripts και Tips”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες