Αγαπητή Μάρω,
Νομίζω ότι κατάφερα να γράψω ένα πρόγραμμα που βρίσκει τα πιο κατάλληλα μερικά ποσά, όπως βλέπεις και στις φωτογραφίες που έχω ανεβάσει.
Από το Excel αρχείο που ανέβασες πήρα τις τιμές για να δοκιμάσω. Εδώ οι μεταβλητές είναι 8, οπότε τα αποτελέσματα τα έχεις σε χρόνο μηδέν.
Θα χρειαζόμουν όμως ένα παράδειγμα που να ανταποκρίνεται στην πραγματικότητα.
Όπως βλέπεις το πρόγραμμα δεν είναι γραμμένο σε Excel.
Εκτός από τις λύσεις που θα προσφέρει το πρόγραμμα, θα πρέπει να ληφθούν και ορισμένα άλλα πράγματα υπόψη.
- Επειδή δε ξέρω πόση ώρα θα δουλεύει το πρόγραμμα μέχρι να βρει τους πιο κατάλληλους συνδυασμούς, θα πρέπει τουλάχιστον ανά πάσα στιγμή να δείχνει που βρίσκεται και ο χρήστης να μπορεί να το διακόψει, (π.χ. έδωσε κάποια στοιχεία λάθος)
- Το PC θα πρέπει να μπορεί να κάνει συγχρόνως και άλλες δουλειές και το βασικότερο σε τακτά χρονικά διαστήματα να ενημερώνει το γραφικό περιβάλλον δίνοντας πληροφορίες που βρίσκεται και πόσο έχει ακόμη μπροστά του(π.χ. ProgressBar).
Σημειώνω για τα υπόλοιπα μέλη ότι τα παραπάνω είναι κάπως δύσκολο να υλοποιηθούν σε
VBA, διότι στις πράξεις που γίνονται, αν δεν έχει ορισθεί διαφορετικά, τις αναλαμβάνει το UI-thread του Excel. Γι’ αυτό φαίνεται το Excel σα να έχει κολλήσει. Συνεπώς χρειάζεται κάτι σαν ένα BackgroundWorker.
Σε παρακαλώ, ανέβασε ένα από τα πραγματικά σου σενάρια όσο το δυνατό το γρηγορότερο για να κάνω κι εγώ μια σειρά από τεστ όσο το δυνατό το γρηγορότερο.
Φιλικά
Ανδρέας