Δημιουργία στοιχείων ελέγχου σε χρόνο εκτέλεσης/επέκταση φορμών/πλωτή γραμμή εργαλείων/ημερολόγιο PTO

Anonim

Γεια σε όλους,

Εργάζομαι για το συνημμένο έργο για μικρό χρονικό διάστημα και σκέφτηκα ότι θα το μοιραζόμουν με την ομάδα. Για να συνοψίσω εν συντομία, ο οργανισμός μου είχε μια ημι -ξεπερασμένη μέθοδο παρακολούθησης του Paid Time Off για τους υπαλλήλους. Υπήρχε ένα ημερολόγιο ενσωματωμένο στο Excel (παρόμοιο με το φύλλο ημερολογίου στο συνημμένο αρχείο μου). Ένας διαχειριστής ουσιαστικά θα εισήγαγε απευθείας στο ημερολόγιο, το οποίο, όπως μπορείτε να φανταστείτε, έγινε σχετικά δύσκολο έργο καθώς ο οργανισμός αυξανόταν. Συγκέντρωσα πολλές από τις ιδέες του Excel VBA που είχα από προηγούμενη εμπειρία στην ολοκλήρωση αυτής της βάσης δεδομένων. Θα κάνω μερικές σημειώσεις εδώ: Καταλαβαίνω ότι σε μακροσκοπικό επίπεδο, αυτό μπορεί να μην είναι τόσο εκλεπτυσμένο όσο η απόκτηση μιας ειδικής λύσης, αλλά φυσικά, δεν είναι επιλογή εκείνη τη στιγμή. Επίσης, ο κώδικας είναι κάπως ακατάστατος κατά τόπους επειδή δεν έχει ελεγχθεί και βελτιωθεί πλήρως. Τέλος, υπάρχουν κάποια πράγματα σε ορισμένες μορφές που μπορεί να φαίνονται περίεργα (πλαίσια ελέγχου που δεν πάνε πουθενά). Αυτά είναι πιθανότατα ένα θύμα μου να κόψω το αρχείο για να αφαιρέσω τυχόν υπάρχοντα εμπιστευτικά δεδομένα.

Όπως υποδηλώνει ο τίτλος [δυσοίωνα], υπάρχουν πολλά στοιχεία που συμβαίνουν στο τετράδιο εργασίας. Εάν έπρεπε να επιλέξω ένα στοιχείο για να εστιάσω, θα πρότεινα να ρίξω μια ματιά στο πρώτο στοιχείο: δημιουργία στοιχείων ελέγχου κατά τη διάρκεια του χρόνου εκτέλεσης. Ένα ζήτημα με τη μετάβαση σε δομή βάσης δεδομένων ήταν η απώλεια επισκοπήσεων των τμημάτων που θα παρέχονταν στη διοίκηση. Σίγουρα, μεμονωμένα φύλλα τμημάτων μπορούν να συνδεθούν, αλλά αυτό θα δημιουργούσε ένα πιο αργό και λιγότερο κλιμακούμενο μοντέλο. Επιπλέον, διαφορετικοί διαχειριστές ζητούν διαφορετικούς τύπους πληροφοριών, οπότε είναι ελάχιστα μια "εφαρμογή ενός μεγέθους για όλες τις εφαρμογές". Το Userform3 (ξέρω, τίτλοι δημιουργικού!) Επιτρέπει στον διαχειριστή του βιβλίου εργασίας να εξάγει συγκεκριμένες πληροφορίες σε αναφορές ανάλογα με τις ανάγκες. Όταν ξεκινάει η φόρμα χρήστη, συμπληρώνεται μια λίστα που περιλαμβάνει τα τρέχοντα τμήματα. Επιπλέον, δημιουργούνται κουμπιά εναλλαγής που αντιστοιχούν σε κάθε πεδίο στο φύλλο εργασίας DATA που επιτρέπει την εξαγωγή αυτού του πεδίου σε ένα νέο βιβλίο. Το πραγματικό όφελος, καθώς οι στήλες προστίθενται ή διαγράφονται (για παράδειγμα κατάργησα τους αριθμούς προϋπολογισμού μας), η μορφή χρήστη επεκτείνεται και συρρικνώνεται και προσθέτει/διαγράφει κουμπιά ανάλογα με τις ανάγκες. Δοκίμασε το. Προσθέστε μια στήλη και, στη συνέχεια, ξεκινήστε τη φόρμα για να δείτε ότι τώρα περιλαμβάνεται στα κουμπιά εναλλαγής.

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

Όταν ανοίγετε το βιβλίο εργασίας, θα πρέπει να υπάρχει μια πλωτή γραμμή εργαλείων, με επιλογή για Αναφορές (από ό, τι καταλαβαίνω, αυτό δεν λειτουργεί πάντα στο Excel 2007, αλλά η γραμμή εργαλείων μπορεί να βρεθεί στην καρτέλα Προγραμματιστής της κορδέλας). Εάν εξακολουθεί να μην είναι ορατό, μπορείτε πάντα να πατήσετε Alt+F8 και μετά να επιλέξετε μακροεντολή ShowForm3 για να δείτε τη μορφή χρήστη των αναφορών.

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