![]() |
Αρχείο καταγραφής αδειών 1 Συνημμένο(α) Καλησπέρα σε όλους. Ευχαριστώ προκαταβολικά για την βοήθεια σας και καλή συνέχεια στην αξιόλογη προσπάθεια σας. Θα ήθελα λοιπόν την πολύτιμη βοήθεια σας στο εξής: Στο επισυναπτόμενο αρχείο καταγραφής αδειών θέλω να υπολογίσω τα διαστήματα αδειών των υπαλλήλων ως σύνολα, λαμβάνοντας την πληροφορία της έναρξης και λήξης της ημέρας του εκάστοτε διαστήματος στον πίνακα A19:AE22. Κοινώς θέλω να προσδιορίσω όλα τα διαφορετικά διαστήματα αδειών ανά υπάλληλο ανεξάρτητα από το πότε χορηγήθηκε χρονικά η άδεια και είτε το χρονικό διάστημα επρόκειτο για μια μεμονωμένη ημέρα ή περισσότερες. Θεωρώ ότι αυτό που ψάχνω δεν υπολογίζεται με φόρμουλα, αλλά μάλλον χρειάζεται κώδικα VBA, όμως το επίπεδο μου δεν μου επιτρέπει κάτι τέτοιο....:013: Οπότε οποιαδήποτε βοήθεια σας είναι ευπρόσδεκτη. |
1 Συνημμένο(α) Καλησπέρα Μάνο, καλωσόρισες στην παρέα μας. Στο επισυναπτόμενο αρχείο μπορείς να δεις μια λύση με κώδικα. Τα χρονικά διαστήματα υπολογίζονται για όλες τις άδειες απουσίας (ΚΑ, ΑΣ). Πατώντας το κουμπί «Υπολογισμός διαστημάτων απουσίας», εκτελείται η διαδικασία Intervals η οποία σε γενικές γραμμές: 1) Καθαρίζει την περιοχή στην οποία θα αντιγραφούν τα αποτελέσματα. 2) Υπολογίζει τα διαστήματα απουσίας με κανονική ή αναρρωτική άδεια. 3) Αντιγράφει τα ονόματα, τις ετικέτες και τα διαστήματα στην περιοχή αποτελεσμάτων. Ο κώδικας περιέχει κατατοπιστικά σχόλια και είναι προσαρμοσμένος στο παράδειγμά σου. Αν η περιοχή των δεδομένων ή των αποτελεσμάτων είναι διαφορετική, θα πρέπει στο παράθυρο του κώδικα να τις αλλάξεις. Για να δούμε τον κώδικα πατούμε Alt+F11. Φιλικά/Γιώργος ΥΓ. Κάνε έλεγχο μήπως κάτι μου διέφυγε |
1 Συνημμένο(α) Γιώργο καλησπέρα, Χίλια ευχαριστώ για την βοήθεια σου. Πραγματικά δεν έχω λόγια. Εύχομαι αυτό που προσφέρεις να το εισπράττεις πίσω διπλάσιο!!! Έκανα μια μικρή προσθήκη στο κώδικα και στο αρχείο για να ελέγξω αν μπορεί να χρησιμοποιηθεί ο κώδικας σε ένα μεγαλύτερο εύρος (πρόσθεσα έναν ακόμα μήνα) και λειτουργεί μια χαρά. Οπότε για όποιο μέλος ενδιαφέρεται σίγουρα μπορεί να λειτουργήσει σε ένα ετήσιο πλάνο αποτυπωμένο σε ένα φύλλο αποκλειστικά. Και πάλι ευχαριστώ και καλή συνέχεια στην αξιόλογη προσπάθεια σας. |
Μάνο, σ' ευχαριστώ και χαίρομαι που μπόρεσα να βοηθήσω. |
1 Συνημμένο(α) Καλησπέρα Το αρχείο που ανέβασα στο προηγούμενο μήνυμα, αν ο χρήστης πριν ή μετά από το είδος της άδειας (ΚΑ, ΑΣ) πληκτρολογούσε κατά λάθος κενά (" "), θα έδινε λανθασμένους υπολογισμούς. Στο επισυναπτόμενο αρχείο, άλλαξα λίγο τον κώδικα, για να αντιμετωπίζεται και η περίπτωση αυτή. Φιλικά/Γιώργος |
1 Συνημμένο(α) DES KAI AYTO AN SE ENDIAFEREI |
Καλημέρα Γιώργο (mpixlhs), κάθε βοήθεια είναι πάντα ευπρόσδεκτη. Αρχικά είχα φτιάξει κάτι αντίστοιχο με το δικό σου αρχείο, αλλά επειδή δεν ήταν πρακτικό να έχω πάρα πολλά ατομικά φύλλα ανά εργαζόμενο, προσανατολίστηκα σε ένα κοινό ετήσιο φύλλο εργασίας όπου θα καταγράφονται συνολικά οι απουσίες όλων των εργαζομένων. Ευχαριστώ όπως και να έχει. Αυτό είναι άλλωστε και το νόημα του παρόντος φόρουμ: να αλληλο-βοηθάμε ο ένας τον άλλο και να καλλιεργούμε ερεθίσματα για δημιουργία και ανάπτυξη/βελτίωση. |
1 Συνημμένο(α) Καλημέρα σε όλους! Θα ήθελα πάλι την πολύτιμη βοήθεια σας στο εξής: Έφτιαξα το ετήσιο πλάνο καταγραφής αδειών με όλους τους μήνες τους έτους, Ορίζοντας τα αντίστοιχα διαστήματα του VBA κώδικα. Όμως μου δημιουργείται ένα "μπάχαλο" στην απεικόνιση των διαστημάτων... Προσπάθησα να φτιάξω τον κώδικα διαφορετικά, αλλά χωρίς επιτυχία. Τι θέλω λοιπόν να κάνω: Τα διαστήματα των αδειών (πίνακας Α, πίνακας Β κλπ) στο φύλλο "Καταχώρηση" να μεταφέρονται με την χρήση του κώδικα στο φύλλο "Διαστήματα", αλλά στους ορισμένους πίνακες αντίστοιχα ανά μήνα (αφήνοντας φυσικά και κάποια κενά κελιά για τις περιπτώσεις μεγαλύτερου εύρους αδειών). Στο επισυναπτόμενο έχω το νέο παράδειγμα, χωρίς κάποια αλλαγή στον κώδικα (παράδειγμα 3). Κάθε βοήθεια ευπρόσδεκτη. |
1 Συνημμένο(α) Καλησπέρα Μάνο, δες μια προσέγγιση στο επισυναπτόμενο αρχείο. 1) Στον κώδικα η περιοχή εισόδου ορίστηκε ώστε να περιλαμβάνει όλους τους πίνακες Α, Β, κλπ. 2) Επίτηδες η περιοχή εξόδου ορίστηκε στο κελί A20 του φύλλου Διαστήματα (στο VBAProject είναι το Sheet4) για να μπορέσεις να συγκρίνεις το αποτέλεσμα με το ζητούμενο. Μπορείς να την ορίσεις στο κελί A1. 3) Ο ορισμός των παραπάνω περιοχών γίνεται στην ρουτίνα DefineMοnths 4) Ο πίνακας για κάθε μήνα έχει ακριβώς το απαιτούμενο μέγεθος, χωρίς κενά. 5) Ο κώδικας σχεδιάστηκε για να δίνει αποτελέσματα και για περιόδους που εκτείνονται σε περισσότερα έτη. Χρειάζεται όμως να δοκιμαστεί. Φιλικά/Γιώργος |
1 Συνημμένο(α) Καλησπέρα Γιώργο. Ευχαριστώ για την βοήθεια σου και ζητώ προκαταβολικά συγνώμη αν καταχράζομαι τον χρόνο σου:dft005: Στο επισυναπτόμενο έχω τρέξει δυο διαφορετικές περιπτώσεις αδειών και έχω προσθέσει έναν ακόμα μήνα. Το πρόβλημα όπως μπορεί να παρατηρήσει κανείς είναι ότι στο φύλλο "Διαστήματα" όπου υπάρχουν περισσότερα διαστήματα αδειών πχ στον μήνα Οκτώβριο καλύπτονται 42 στήλες ακριβώς σε αντίθεση με το φύλλο "Διαστήματα (2)", όπου στον αντίστοιχο μήνα τα διαστήματα είναι μικρότερα. Αυτό που θέλω είναι σε κάθε μήνα στο φύλλο "Διαστήματα" όπου αποτυπώνονται τα διαστήματα αδειών να υπάρχουν σταθερά 42 στήλες σε κάθε μήνα και η επικόλληση των ημερομηνιών να γίνεται μέσα στο σχετικό εύρος ανά μήνα (από στήλη 1 έως 42) ανάλογα με το τι έχει καταχωρηθεί . Άρα λοιπόν στο φύλλο "Διαστήματα" θα υπάρχει ένας πίνακας 12x42 (12 μήνες επί 42 στήλες ανά μήνα) και εκεί μέσα στα ορισμένα κελιά του εκάστοτε μήνα θα πρέπει να μεταφέρονται τα διαστήματα των αδειών και σύνολα αυτών. Προσπάθησα να "πειράξω" τον κώδικα αλλά χωρίς τύχη, όποτε θα χρειαστώ τα φώτα σας και πάλι...:026: |
| Η ώρα είναι 09:52. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.