Forum

Forum (https://www.ms-office.gr/forum/)
-   Excel - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/)
-   -   [VBA] Πρόγραμμα εργασίας- Εφημερίες- Επιτηρήσεις- Κατανομή προσωπικού σε βάρδιες (πόστα) (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/6444-programma-ergasias-efimeries-epitiriseis-katanomi-prosopikoi-se-bardies-posta.html)

NIC 04-12-12 14:34

Πρόγραμμα εφημεριών
 
1 Συνημμένο(α)
Μου ζήτησε έναν φίλος που δουλεύει σε σχολειό και έχει αναλάβει τις εφημερίες των συναδέλφων του κάτι «εύκολο» ώστε αφού καταχωρεί κάπου τις διάφορες δεσμεύσεις των συναδέλφων μετά να βγαίνουν αυτόματα οι εφημερίες ( μετά απλά θα αλλάζει η σειρά μεταξύ τους ανά μέρα)
Υπάρχει δυνατότητα να μπει παράμετρος ότι όλοι θα κάνουν από δυο .
Σας στέλνω το αρχείο που χρησιμοποιούν για χειρόγραφη επεξεργασία που κάνουν τώρα
( δεν ξέρω μήπως πρέπει να γίνει με άλλο πρόγραμμα πχ access)

gr8styl 05-12-12 00:51

1 Συνημμένο(α)
Καλησπέρα/Καλημέρα

Δες στο συνημμένο μια πρόταση/προσέγγιση.
Ελπίζω να βοηθήσει.

Φιλικά
Θανάσης

Spirosgr 05-12-12 08:00

Καλημέρα
Παρ' όλο που ο Θανάσης έχει κάνει καταπληκτική δουλειά νομίζω ότι το ζητούμενο έχει βασικές ασάφειες για να επιτευχθεί.
Για να έχουμε 100% αποτέλεσμα πρέπει να ξέρουμε τον ακριβή αριθμό του δυναμικού που θα πάρει τα πόστα και ο περιορισμός (παράμετρος) <<ότι όλοι θα κάνουν από δυο>> πρέπει να διευκρινιστεί αν θέλουμε μέγιστο δύο ή τουλάχιστον δύο.
Στην κατάσταση με τα μέχρι τώρα δεδομένα δεν μπορεί να πραγματοποιηθεί κάτι τέτοιο διότι δεν είναι δυνατόν να καλύψουμε πέντε ημέρες με πέντε άτομα σε πέντε πόστα και με δύο μόνο εμφανίσεις ανά εβδομάδα για τον καθ' ένα (έτσι όπως το καταλαβαίνω εγώ)
Ακόμα αν έχουμε τρεις κολληόμενους σε μία μέρα με αυτό το δυναμικό δεν βγαίνει υπηρεσία
Για να επιτευχθεί το ζητούμενο πρέπει να γίνει μία κυλιόμενη "σκάλα" στην οποία θα υπάρχουν τα διαθέσιμα Ονόματα και κάθε φορά που θα "χαλάει" η σειρά λόγω κολλήματος να παίρνει από την λίστα ονομάτων τον επόμενο διαθέσιμο μέχρι να συμπληρωθεί το όριο?? των δύο εμφανίσεων
Αυτό προϋποθέτει πλήρης πληροφορίες (και μάλλον "λίγο" κώδικα VBA)

ΤΖΙΜΗΣ 05-12-12 13:08

Καταπληκτική δουλειά από τον Θανάση ομολογουμένως.Επίσης θα πρέπει να πω ότι στο σχολείο οι εφημερίες προκύπτουν ανα πόστο και ανα ώρα ενδεχομένως.Δηλαδή καθηγητής που έχει μάθημα από της 8:00 έως στις 12:00 δεν συνεχίζει την εφημερία του αλλά την καλύπτει κάποιος άλλος.Επίσης αν θα αλλαζει η εβδομάδα θα πρέπει να αλλάζουμε και τα πόστα στους καθηγητές ώστε να είναι κυλιόμενα.Επίσης θα πρέπει να ορίσουμε και τους παραμέτρους που επισήμανε και ο Σπύρος δηλαδή μέγιστο πλήθος εφημεριών ανα καθηγητή.
Τέλος δεν κατάλαβα τι επηρεάζει ακριβώς το πλήθος στις βάρδιες.
Με εκτίμηση Τζίμης

NIC 05-12-12 18:14

Παράθεση:

Αρχική Δημοσίευση από spirosgr (Μήνυμα 13123)
Καλημέρα
Παρ' όλο που ο Θανάσης έχει κάνει καταπληκτική δουλειά νομίζω ότι το ζητούμενο έχει βασικές ασάφειες για να επιτευχθεί.
Για να έχουμε 100% αποτέλεσμα πρέπει να ξέρουμε τον ακριβή αριθμό του δυναμικού που θα πάρει τα πόστα και ο περιορισμός (παράμετρος) <<ότι όλοι θα κάνουν από δυο>> πρέπει να διευκρινιστεί αν θέλουμε μέγιστο δύο ή τουλάχιστον δύο.
Στην κατάσταση με τα μέχρι τώρα δεδομένα δεν μπορεί να πραγματοποιηθεί κάτι τέτοιο διότι δεν είναι δυνατόν να καλύψουμε πέντε ημέρες με πέντε άτομα σε πέντε πόστα και με δύο μόνο εμφανίσεις ανά εβδομάδα για τον καθ' ένα (έτσι όπως το καταλαβαίνω εγώ)
Ακόμα αν έχουμε τρεις κολληόμενους σε μία μέρα με αυτό το δυναμικό δεν βγαίνει υπηρεσία
Για να επιτευχθεί το ζητούμενο πρέπει να γίνει μία κυλιόμενη "σκάλα" στην οποία θα υπάρχουν τα διαθέσιμα Ονόματα και κάθε φορά που θα "χαλάει" η σειρά λόγω κολλήματος να παίρνει από την λίστα ονομάτων τον επόμενο διαθέσιμο μέχρι να συμπληρωθεί το όριο?? των δύο εμφανίσεων
Αυτό προϋποθέτει πλήρης πληροφορίες (και μάλλον "λίγο" κώδικα VBA)

Σωστή η παρατήρηση και σε ερώτηση που έκανα σήμερα στον φίλο μου είπε πως είναι 12 άτομα που θα κάνουν από 2 υπηρεσίες και 1 άτομο που κάνει μόνο μια λόγο προγράμματος άρα ακριβώς 25 εφημερίες. Θα δοκιμάσω το αρχείο και θα σας πω. Σήμερα βρήκα επίσης ένα πρόγραμμα σε access από κάποιο δάσκαλο που το έκανε για το δημοτικό του και θα το βάλω στο site για να υπάρχει και αν γίνεται να το βελτιώσουμε. Ευχαριστώ

NIC 05-12-12 18:28

Αρχείο συμπληρωμένο
 
1 Συνημμένο(α)
Σας « ανεβάζω» το αρχείο με 13 καθηγητές από τους οποίους οι 12 κάνουν από 2 και ένα κάνει μόνο μια εφημερία. Το αρχείο του Θανάση παίρνει τους 5 πρώτους και μετά αλλάζει μόνο αν έχουμε κόλλημα. Επίσης αυτό που λέει ο Τζίμης δεν ισχύει εδώ μια και ο εφημερεύων είναι όλη την ημέρα και όχι την μίση

gr8styl 05-12-12 19:52

Παράθεση:

Αρχική Δημοσίευση από NIC (Μήνυμα 13155)
.... Το αρχείο του Θανάση παίρνει τους 5 πρώτους και μετά αλλάζει μόνο αν έχουμε κόλλημα....

Το αρχείο που ανέβασα, στο Μ2 έχει τον τύπο
=IF(ISERROR(MATCH($K2;Φύλλο1!C$19:C$23;0));$J 2;"")
άλλαξέ τον σε
=IF(AND(ISERROR(MATCH($K2;Φύλλο1!C$19:C$23;0));$J2>MATCH(B$8;Επιτηρητές;0));$J2;"")
και αντίγραψέ τον προς τα κάτω και προς τα δεξιά μέχρι το κελί P26
έτσι δεν θα επαναλαμβάνονται μόνο οι 5 πρώτοι επιτηρητές όταν έχεις περισσότερους από 5.

Σημ. όταν θέλεις να προσθέσεις περισσότερους από 12 επιτηρητές για να προσαρμοστεί αυτόματα το όνομα "επιτηρητές" θα πρέπει να εισάγεις κελιά μεταξύ Η12 και Η13.

Πες μας αν έγινε.
Θανάσης

stsepas 21-09-18 08:21

ΕΦΗΜΕΡΙΕΣ ΣΕ ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ
 
Παράθεση:

Αρχική Δημοσίευση από gr8styl (Μήνυμα 13122)
Καλησπέρα/Καλημέρα

Δες στο συνημμένο μια πρόταση/προσέγγιση.
Ελπίζω να βοηθήσει.

Φιλικά
Θανάσης

ΠΑΙΔΙΑ ΒΟΗΘΕΙΑ
ΕΧΟΥΜΕ 8 ΕΚΠΑΙΔΕΥΤΙΚΟΥΣ ΤΗΝ ΕΒΔΟΜΑΔΑ
ΠΡΕΠΕΙ ΝΑ ΚΑΝΟΥΝ ΕΦΗΜΕΡΙΑ ΚΑΘΕ ΜΕΡΑ 2
ΠΩΣ ΜΠΟΡΟΥΜΕ ΝΑ ΒΓΑΛΟΥΜΕ ΤΙΣ ΕΤΗΣΙΕΣ ΕΦΗΜΕΡΙΕΣ ΧΩΡΙΣ ΝΑ ΑΔΙΚΗΣΟΥΜΕ ΚΑΝΕΝΑ

kapetang 21-09-18 11:40

1 Συνημμένο(α)
Καλησπέρα

Σταύρο δες μια λύση στο συνημμένο.

Η λύση στηρίζεται σε κώδικα (VBA), συνεπώς απαιτείται ενεργοποίηση των μακροεντολών.

Στο συνημμένο υπάρχουν και λεπτομερείς οδηγίες για τη χρήση και την προσαρμογή του.

ΥΓ Μη χρησιμοποιείς κεφαλαία. Κάνουν το κείμενο δυσανάγνωστο και κουραστικό.

stsepas 22-09-18 00:40

Eυχαριστώ!!!!!!!!!!!!!
 
Παράθεση:

Αρχική Δημοσίευση από kapetang (Μήνυμα 28321)
Καλησπέρα

Σταύρο δες μια λύση στο συνημμένο.

Η λύση στηρίζεται σε κώδικα (VBA), συνεπώς απαιτείται ενεργοποίηση των μακροεντολών.

Στο συνημμένο υπάρχουν και λεπτομερείς οδηγίες για τη χρήση και την προσαρμογή του.

ΥΓ Μη χρησιμοποιείς κεφαλαία. Κάνουν το κείμενο δυσανάγνωστο και κουραστικό.

Σε ευχαριστώ παρα πολύ για την βοήθεια
Να είστε πάντα καλά


Η ώρα είναι 21:35.

Ms-Office.gr - ©2000 - 2024, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2