Θέμα: Συναρτήσεις Άθροιση υπό όρους

Εμφάνιση ενός μόνο μηνύματος
  #34  
Παλιά 24-12-10, 23:31
officeandi Ο χρήστης officeandi δεν είναι συνδεδεμένος
Όνομα: Ανδρέας
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 06-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 17
Προεπιλογή

Καλησπέρα σε όλα τα μέλη,

Εύχομαι σε όλους χαρούμενα Χριστούγεννα, ό,τι ποθείτε, και άντε να δούμε πόσο καλά θα τραγουδήσουμε το «πάει ο παλιός ο χρόνος…».

Αγαπητέ Γιάννη (nisgia),

Κατ’ αρχήν σε ευχαριστώ για το καλωσόρισμα. Είστε μια πολύ καλή παρέα και όποιος αισθάνεται πως βρίσκεται μέσα σε αυτή, είναι σίγουρα υπερήφανος.

Σχετικά με αυτά που αναφέρεις στο μήνυμά σου για μένα, θα ήθελα να ξέρεις, ότι το τελευταίο που θα έκανα, θα ήταν να σε παρεξηγήσω. Ίσα, ίσα αυτό με ώθησε να το ξαναγράψω σε VBA και το επισυνάπτω σε αυτό το μήνυμα. Απλά νιώθω λίγο πιο άνετα με την C#, και νομίζω ότι όταν κάποιος έχει μια ιδέα, προσπαθεί να την καταγράψει όσο πιο εύκολα είναι γι’ αυτόν.

Πολύ σύντομα όμως θα ήθελα να αναφερθώ στους λόγους, για τους οποίους ανέβασα το προηγούμενο σαν εγκατάσταση.
  • Τις επιλογές που πρέπει να κάνει ο χρήστης πριν από την εκκίνηση για την εύρεση των αθροισμάτων, ήθελα να είναι έξω από το φύλλο εργασίας των δεδομένων, διότι οι επιλογές οι ίδιες δεν είναι δεδομένα. Σκέφτηκα να φτιάξω ένα Ribbon, αλλά όπως γνωρίζουμε το Office 2007 δεν έχει τα απαραίτητα εργαλεία. Μια ματιά στη βοήθεια του Excel και ξεκαθαρίζεται αμέσως. Ίσως αυτό όμως να έχει αλλάξει στο Office 2010.
  • Όταν ταξινομώ εσωτερικά το array που σχηματίζεται από την επιλογή του χρήστη, χρησιμοποιώ για αυτό ένα ξένο Module για τη ταξινόμηση, δηλαδή πράγματα, τα οποία σε άλλες γλώσσες έχουν λυθεί εδώ και καιρό. Θα μπορούσα και να ταξινομήσω με τη βοήθεια του Excel, αλλά θεωρώ ότι δεν είναι καλό για το χρήστη να αλλάζει η προβολή των δεδομένων.
  • Τέλος, για να είμαι από μέρος μου σίγουρος ότι ο χρήστης έχει εγκατεστημένο ό,τι χρειάζεται για να λειτουργεί το αρχείο, δημιούργησα την εγκατάσταση. Η εναλλακτική λύση θα ήταν να κατεβάσει ο ίδιος αυτά που χρειάζονται από το Διαδίκτυο σε περίπτωση που δεν τα έχει, να ξέρει που θα τα βρει και να εισάγει ορισμένες ρυθμίσεις στο μητρώο του υπολογιστή, πράγμα επικίνδυνο.

Ο αλγόριθμος σε VBA συμπεριφέρεται ακριβώς το ίδιο. Ως προς την ταχύτητα δεν νομίζω ότι διαφέρει και πάρα πολύ. Ο προηγούμενος ενώ είναι πολύ πιο γρήγορος στον υπολογισμό (και θα μπορούσε να γίνει ακόμη πιο γρήγορος), χάνει ώρα στη επικοινωνία με το Excel. Η μόνη διαφορά είναι ότι ο καινούργιος (VBA) κατά τον υπολογισμό δείχνει και την πρόοδο (ποσοστό).

Προσπάθησα να σχολιάσω τον κώδικά όσο πιο πιο αναλυτικά μπορούσα.

Και πάλι καλά Χριστούγεννα, υγεία και καλή καρδιά σε όλους!

Φιλικά
Ανδρέας
Συνημμένα Αρχεία
Τύπος Αρχείου: zip mdragon.solution.vba.xlsm.zip (206,0 KB, 17 εμφανίσεις)
Απάντηση με παράθεση