Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > μπορεί να γίνει κατι τέτοιο με access

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

 

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
Prev Προηγούμενο μήνυμα   Επόμενο Μήνυμα Next
  #17  
Παλιά 25-10-10, 09:49
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα στην παρέα

Η βάση δεδομένων που επισυνάπτεται αποτελεί μια προσπάθεια επίλυσης του ζόρικου προβλήματος βελτιστοποίησης της κοπής, που έθεσε ο Σάκης.
Α. Λίγη θεωρία
Το πρόβλημα διατυπώνεται ως εξής: Θέλουμε να κόψουμε N κομμάτια. Να προσδιοριστούν τα κομμάτια που θα κοπούν από μία ράβδο μήκους L, ώστε το ρετάλι να είναι ελάχιστο.
Θεωρητικά από τη ράβδο μπορούμε να κόψουμε 1, 2,...N τεμάχια. Δηλαδή θα πρέπει να σχηματίσουμε όλους τους συνδυασμούς των N ανά 1, 2, ..., Ν και να επιλέξουμε εκείνον που εκμεταλλεύεται καλύτερα τη ράβδο. Η αντιμετώπιση αυτή είναι πολύ χρονοβόρα.
Για τη βελτίωση της ταχύτητας τα τεμάχια ταξινομούνται κατά αύξουσα σειρά ως προς το μήκος τους. Αυτό βοηθάει στον εύκολο αποκλεισμό των αδύνατων συνδυασμών (αυτών που δε χωρούν στη ράβδο).
Στον κώδικα έχουν υλοποιηθεί οι συνδυασμοί μέχρι 15 τεμαχίων.
Στις εφαρμογές βελτιστοποίησης η αύξηση του Ν αυξάνει απότομα το χρόνο υπολογισμού . Σε δοκιμές που έκανα αν το πλήθος των τεμαχίων υπερβεί το 30 μπορεί (ανάλογα και με το PC) να υπάρξουν προβλήματα (να φαίνεται σαν να κόλλησε το PC).

Β. Συνοπτικά η εφαρμογή
Έχει τη δυνατότητα οι ράβδοι από τις οποίες θα γίνει η κοπή να έχουν διαφορετικά μήκη.
Όλη η δουλειά γίνεται στη φόρμα frmTemahiaProsKopi. Εδώ καταχωρούνται τα μήκη των τεμαχίων που θα κοπούν, επιλέγεται το μήκος της πρώτη ράβδου, το πάχος της απώλειας κοπής και αν θα χρησιμοποιήσουμε ράβδους σταθερού μήκους. Στη συνέχεια πατώντας το κουμπί «βελτιστοποίηση κοπής» γίνεται ο υπολογισμός και τα αποτελέσματα αποθηκεύονται στον πίνακα tblBestKopis και εμφανίζονται στη φόρμα frmKopis.

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

Φιλικά/Γιώργος
Υ.Γ Πρώτη φορά χρησιμοποίησα την access 2007. Με εκνεύρισε. Ελπίζω να μη υπάρχει και πρόβλημα με το κόμμα στους αριθμούς.
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb BestCutting3.mdb (444,0 KB, 90 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 31-10-10 στις 18:02. Αιτία: άλλαγή στον κώδικα: από C(10) σε C(I10)
Απάντηση με παράθεση
 


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
Έλεγχος αν η εκτέλεση ερωτήματος επιστρέφει κάτι. sarrpan Access - Ερωτήσεις / Απαντήσεις 6 14-02-14 07:37
[ Ερωτήματα ] όπου is null μπορεί να γίνει τρέχουσα ημερομηνία mousatos Access - Ερωτήσεις / Απαντήσεις 2 08-09-13 21:21
[Excel07] Πως μπορεί να αντιγραφούν μόνο τα μερικά αθροίσματα σε άλλο φύλλο GEORGE1 Excel - Ερωτήσεις / Απαντήσεις 2 18-01-13 15:12
Στοιχείο ελέγχου. Πως θα γινει;; viki_moulara Access - Ερωτήσεις / Απαντήσεις 1 12-12-10 16:17


Η ώρα είναι 16:31.