Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Excel > Excel - Ερωτήσεις / Απαντήσεις > [VBA] Πρόγραμμα εργασίας- Εφημερίες- Επιτηρήσεις- Κατανομή προσωπικού σε βάρδιες (πόστα)

Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ.

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #81  
Παλιά 31-01-23, 14:28
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Το συνημμένο αφορά στην περίπτωση που, αν κάποιος εργαζόμενος είναι σε άδεια, αναρρωτική ή κάνει βάρδια σε μια άλλη μονάδα, μία ημερομηνία, αποκλείεται να επιλεγεί για βάρδια την ημερομηνία αυτή.

Επειδή κάθε μέρα απαιτούνται 14 εργαζόμενοι, για να λειτουργήσει το πρόγραμμα, οι διαθέσιμοι
(αυτοί που μένουν μετά την αφαίρεση των κωλυομένων) πρέπει να είναι, κάθε μέρα, >=14.

Στο πρόγραμμα έχουν γίνει αρκετές μεταβολές, ώστε να είναι ευκολότερη η προσαρμογή του:

1) Οι ημερομηνίες δε συμπληρώνονται με τύπους, αλλά με το εργαλείο που διαθέτει το Excel για τη συμπλήρωση σειρών ημερομηνιών.

Αυτό δίνει τη δυνατότητα εισαγωγής γραμμών (αν έχουμε πχ βάρδια Κυριακή) ή διαγραφής γραμμών (αν κάποιες ημερομηνίες πέφτουν σε διακοπές).

2) Για τη διευκόλυνση της προσθήκης και της διαγραφής γραμμών, στο φύλλο "Program" αφαίρεσα τις στήλες με τα ονόματα και τις συνολικές βάρδιες και τα στοιχεία τα πρόσθεσα στο φύλλο "Data"

3) Όταν επιλέγουμε προσωπικό για μία ημερομηνία, ο κώδικας υπολογίζει τις συνολικές βάρδιες, κάθε διαθέσιμου εργαζόμενου πριν από την ημερομηνία και επιλέγει τους 14 με τις λιγότερες βάρδιες.

Έτσι επιτυγχάνεται εξισορρόπηση στις βάρδιες.

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

Για τη λύση αυτού του προβλήματος (αν θεωρηθεί πρόβλημα) πρόσθεσα στο φύλλο "Data" και τη στήλη "Βάρδιες αλλού".

Κάνε δοκιμές, πατώντας αρκετές φορές το κουμπί "Προσθήκη", για να διαπιστωθεί ότι το πρόγραμμα, λειτουργεί σωστά και μετά κάνε τις αναγκαίες προσαρμογές πχ στις ημερομηνίες, σε τίτλους στηλών, κλπ.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ProgramWork14ByDayData3.xlsm (131,8 KB, 11 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 01-02-23 στις 20:37. Αιτία: Διόρθωση κώδικα VBA
Απάντηση με παράθεση
  #82  
Παλιά 31-01-23, 21:34
Όνομα: Χαρά
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 25-01-2023
Μηνύματα: 7
Προεπιλογή

Γιατί όταν πατάω Προσθήκη μου βγάζει ένα κινέζικο μήνυμα; και δεν δινει αποτελεσμα;
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ProgramWork14ByDayData3 (1).xlsm (130,6 KB, 8 εμφανίσεις)
Απάντηση με παράθεση
  #83  
Παλιά 31-01-23, 23:28
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Στην ημερομηνία πχ 31/1/2023, από τα 28 άτομα μόνο 7 είναι διαθέσιμα, σε άλλες είναι και λιγότερα.

Πως από τους 7 διαθέσιμους θα πάρουμε 14;

Όπως γράφω οι διαθέσιμοι, κάθε μέρα, πρέπει να είναι >=14.

Το μήνυμα γράφει: «Δεν επαρκούν οι διαθέσιμοι», το βγάζει κινέζικα επειδή πιθανόν δεν υπάρχει κάποια γραμματοσειρά στον υπολογιστή σου.

Είναι περίεργο πάντως από τα 28 άτομα τα περισσότερα άτομα να κάνουν εξωτερικές βάρδιες
Απάντηση με παράθεση
  #84  
Παλιά 01-02-23, 21:12
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Οι εργαζόμενοι, στη συγκεκριμένη περίπτωση, απαιτείται, κάθε μέρα, να καλύψουν 2 βάρδιες (πχ πρωινή, απογευματινή) σε 7 πόστα.

Διακρίνουμε 2 περιπτώσεις:

1) Κάθε εργαζόμενος μπορεί να κάνει την ημέρα το πολύ 1 βάρδια (είτε εσωτερική είτε εξωτερική).

Συνεπώς κάθε μέρα απαιτούνται τουλάχιστον 14 διαθέσιμοι (χωρίς εξωτερική βάρδια, αναρωτική και άδεια)

2) Κάθε εργαζόμενος μπορεί να κάνει την ημέρα και 2 (μία πρωινή και μία απογευματινή) βάρδιες.

Συνεπώς κάθε μέρα απαιτούνται τουλάχιστον 7 διαθέσιμοι (χωρίς αναρωτική και άδεια)

Οι βάρδιες μπορεί να είναι και οι 2 εσωτερικές ή μία εσωτερική και μία εξωτερική.

Επισυνάπτω 2 αρχεία:

Το ProgramWork14ByDayData3.xlsm είναι για την 1η περίπτωση.

Το ProgramWork14ByDayData2Vardies.xlsm είναι για τη 2η περίπτωση

Ο κώδικας είναι αρκετά πολύπλοκος και μπορεί κάτι να μου διέφυγε.

Θα χαρώ αν, μετά από δοκιμές, μου επισημανθεί κάποιο λάθος ή απρόσμενη συμπεριφορά.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ProgramWork14ByDayData3.xlsm (131,9 KB, 19 εμφανίσεις)
Τύπος Αρχείου: xlsm ProgramWork14ByDayData2Vardies.xlsm (132,0 KB, 19 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 02-02-23 στις 11:34.
Απάντηση με παράθεση
  #85  
Παλιά 02-02-23, 13:53
Όνομα: Χαρά
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 25-01-2023
Μηνύματα: 7
Προεπιλογή

Καλησπέρα! Καταρχήν ευχαριστώ πολύ για τον χρόνο που αφιερώνετε!!!

Οι συνάδελφοι που κάνουν εφημερίες εξωτερικές (σε άλλο σχολείο) δεν μπαίνουν καθόλου στη λίστα.
Οπότε όσα ονόματα γράφονται στο excel είναι ατόμων που εφημερεύουν μόνο εσωτερικά (στο δικό μας σχολείο).
Εκείνο που προσπαθώ είναι οι συνάδελφοι να κάνουν εφημερία σε μια βάρδια τη μέρα ανάλογα με το ωράριο τους.
Π.χ. κάποιος που ξεκινάει 3η ώρα και τελειώνει 7η να μπορεί να μπει μόνο στη δεύτερη βάρδια άρα να φαίνεται μη διαθέσιμος για την πρώτη βάρδια (και το αντίστροφο).
Επίσης προσπαθώ να μπαίνουν σε κάθε πόστο με μια κυκλικότητα (ώστε να μην έχω παράπονα οτι κάποιος μπαίνει συχνά στην ίδια θέση).
Θα δοκιμάσω την 1η περίπτωση που μου στείλατε..
Ευχαριστώ πολύ!
Απάντηση με παράθεση
  #86  
Παλιά 02-02-23, 15:58
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλό είναι να δοκιμάσεις και τη δεύτερη περίπτωση κάνοντας τις ακόλουθες επιλογές στα κωλύματα:

1) «Α βάρδια», κάποιος μπορεί, με βάση το ωράριό του, να μπει στη «Β βάρδια»

2 ) «Β βάρδια», κάποιος μπορεί, με βάση το ωράριό του, να μπει στη «Α βάρδια»

3) Τίποτα (κενό), μπορεί να μπει και στις 2 βάρδιες

Τονίζω ότι στην 1η λύση (1ο αρχείο) επιλέγονται μόνο αυτοί που δεν έχουν κανένα κώλυμα (το αντίστοιχο κελί είναι κενό).

Λες κάτι για ωράρια, αλλά δε δίνεις λεπρομέρειες (πότε αρχίζουν και πότε τελειώνουν, κλπ).

Εδώ οι λεπτομέρειες έχουν σημασία.

Τελευταία επεξεργασία από το χρήστη kapetang : 02-02-23 στις 21:56.
Απάντηση με παράθεση
  #87  
Παλιά 02-02-23, 20:52
Όνομα: Χαρά
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 25-01-2023
Μηνύματα: 7
Προεπιλογή

1) Λοιπόν απ’ ότι κατάλαβα στο δεύτερο αρχείο αν επιλέξω στα κωλύματα «Α Βάρδια» θα αποκλειστεί από την «Α Βάρδια» και θα μπορεί να επιλεγεί μόνο για τη «Β Βάρδια» (και το αντίστροφο).
Αυτό εξυπηρετεί!!!
2) Αν πάλι δεν βάλω κανένα κώλυμα θα μπορεί να επιλεγεί και στις 2 βάρδιες (υπάρχει ο περιορισμός μια βάρδια τη μέρα για κάθε εκπαιδευτικό; Ή θα μου βγάζει το ίδιο άτομο και στις 2 βάρδιες;).
3) Το ωράριο του κάθε εκπαιδευτικού δεν είναι σταθερό, τη μια μέρα μπορεί να έρχεται από την 1η ώρα, την άλλη την 3η ώρα και μια άλλη μέρα να έχει μάθημα 1η έως 7η ώρα. Αυτό αλλάζει δυστυχώς συχνά γιατί όταν κάποιος συνάδελφος λείπει (άδεια, αναρρωτική…), γίνεται προσαρμογή του προγράμματος ώστε τα παιδιά να μην έχουν κενά. Αυτό δεν μπορεί να προβλεφθεί από το πρόγραμμα σας! Αυτό θα το φτιάχνω εγώ κάθε φορά που θα έχω τέτοια αλλαγή προσαρμόζοντας τα κωλύματα από την αρχή.
Ελπίζω να βοήθησα να καταλάβετε.

Πάντως για να μη σας ταλαιπωρώ άλλο εμένα μου αρκεί να μπορεί να λειτουργήσει:
• το 1)
• το 2) (με μέγιστο μια βάρδια τη μέρα για τον εφημερεύοντα)
• και να επιλέγονται κάθε φορά οι εκπαιδευτικοί με τις λιγότερες εφημερίες.
Απάντηση με παράθεση
  #88  
Παλιά 02-02-23, 21:48
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Όπως σχεδιάστηκε το πρόγραμμα ισχύουν τα εξής:

1) Το 1ο

2) Όταν δεν υπάρχει κώλυμα κάποιος μπορεί να εμφανιστεί και στις 2 βάρδιες.

Είναι κάπως απίθανο αλλά μπορεί να παρουσιαστεί.

Με αντιγραφή/επικόλληση μπορείς να τον αντικαταστήσεις με άλλο διαθέσιμο από αυτούς που έχουν τις λιγότερες εφημερίες (φαίνονται στο φύλλο Data)

3) Το 3ο ισχύει.

Γίνεται εξισορρόπηση των συνολικών κατά εργαζόμενο εφημεριών.

Δεν γίνεται όμως και ανά πόστο.

Εδώ έχεις τη δυνατότητα με αντιγραφή/επικόλληση να αναδιατάξεις τους επιλεγέντες από το πρόγραμμα.

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

Εγώ θα προσπαθήσω να περιορίσω τις βάρδιες σε 1 και ίσως σκεφτώ κάτι και για την εξισορρόπηση ανά πόστο.
Απάντηση με παράθεση
  #89  
Παλιά 03-02-23, 14:54
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Επισυνάπτω, για δοκιμή μία τελική μορφή του προγράμματος.

1) Επιτρέπει το πολύ μία εφημερία

2) Εξισορροπεί τις συνολικές, στα διάφορα πόστα, υπηρεσίες.

3) Εξισορροπεί ικανοποιητικά και τις υπηρεσίες ανά πόστο.

Έχω κάνει αρκετές αλλαγές για να είναι έτοιμο για χρήση:

1) Αφαίρεσα τα πλαίσια κειμένου βοήθειας από τα φύλλα Data και Program και τα μετέφερα στα αντίστοιχα φύλλα HelpData και HelpProgram.

2) Επειδή ενδέχεται να μη εμφανίζονται σωστά κάποια μηνύματα που παρουσιάζει το πρόγραμμα, πρόσθεσα το φύλλο Messages.

3) Πρόσθεσα το φύλλο Sumary, όπου εμφανίζονται αναλυτικά κατά πόστο οι υπηρεσίες κάθε εργαζόμενου.

Στο φύλλο Data έχω προσθέσει τη στήλη «Πριμοδότηση».

Ο ρόλος της εξηγείται στο φύλλο HelpData.

Επισημάνσεις για τυχόν λάθη και βελτιώσεις είναι ευπρόσδεκτες.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ProgramWork14ByDayIn2VardiesNew.xlsm (175,0 KB, 20 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 06-02-23 στις 14:12. Αιτία: Προσθήκη μεγαλύτερης ευελιξίας
Απάντηση με παράθεση
  #90  
Παλιά 07-02-23, 11:15
Όνομα: Γρηγόρης
Έκδοση λογισμικού Office: Ms-Office 2003
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 31-12-2009
Περιοχή: ΜΥΤΙΛΗΝΗ
Μηνύματα: 29
Προεπιλογή

καλημερα
Βλέποντας το ενδιαφέρων του καλου φιλου Γιωργο , θα τολμήσω να ζητήσω κατι που για πολυ καιρο με απασχολούσε μιας και το εχει φρεσκο.
1. Καποιος καθηγητης θελει να κανει επιτηρηση 1η και 2η βαρδια την ιδια ημερα
2. καποιοι καθηγητες που εχουν πολλες εισηγήσεις να κανουν λίγες επιτηρήσεις και αντιστροφα

Καλο θα ηταν και στις 2 περιπτωσεις να ελεγχονται χειροκίνητα , τσεκάροντας τους αντίστοιχους καθηγητές
ευχαριστω
Γρηγόρης
Απάντηση με παράθεση
Απάντηση στο θέμα


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[VBA] Πρόγραμμα Αδειών Προσωπικού spiroschrysis Excel - Ερωτήσεις / Απαντήσεις 37 20-11-24 21:16
[Γενικά] Πρόγραμμα Αδειών Προσωπικού spmatrix Excel - Ερωτήσεις / Απαντήσεις 15 07-03-23 18:01
Πρόγραμμα εργασίας- Εφημερίες- Επιτηρήσεις- Κατανομή προσωπικού σε βάρδιες (πόστα) kapetang Excel samples - Χρήσιμα αρχεία & παραδείγματα 0 12-02-23 13:57
[Συναρτήσεις] βαρδιες προσωπικού spiros1982 Excel - Ερωτήσεις / Απαντήσεις 9 12-12-21 17:42
[Γενικά] Πρόγραμμα για βάρδιες XATZOPOULOS DHMOKRITOS Excel - Ερωτήσεις / Απαντήσεις 4 25-10-20 10:12


Η ώρα είναι 12:13.