![]() |
Εμφάνιση κρυφού φύλλου βάση συγκεκριμένης τιμής Καλησπέρα σε όλους τους φίλους της κοινότητας.Θα ήθελα την πολύτιμη βοήθεια σας στο εξής. Έχω δημιουργήσει μια εφαρμογή για διαχείριση καρτελών μαθητολογίου.Δηλαδή ένα βιβλίο το οποίο αποτελείται από καρτέλες μαθητών.Κάθε ένα φύλλο αντιστοιχεί και σε ένα μαθητή με το ονοματεπώνυμο του. Θέλω όμως στην εφαρμογή αυτή να προσθέσω και το εξής σύνθετο , μιας και οι μαθητές με κωδικό που θα τους δωθεί θα μπορούν να κατεβάζουν την εν λόγω εφαρμογή από την ιστοσελίδα του σχολείου. Ειδικότερα στο πρώτο φύλλο που έχω δημιουργήσει , σε ένα κελί να πληκτρολογούν τον αριθμό μητρώο τους( αλφαριθμητικός χαρακτήρας) και εν συνεχεία να τους εμφανίζεται η καρτέλα τους, η οποία θα είναι κλειδωμένη.Αυτό απαιτεί: 1. Όλα τα φύλλα θα είναι σε απόκρυψη και θα εμφανίζεται το συγκεκριμένο φύλλο ανάλογα με την πληκτρολόγηση του αριθμού μητρώου.Καλό θα είναι κατά την πληκρολόγηση να γίνεται και ένας έλεγχος ορθότητας για το αν υπάρχει ο αριθμός μητρώου στον πίνακα ή όχι 2.Απαιτεί και ένα φύλλο εργασίας το οποίο και αυτό έχω φτιάξει, όπου και αυτό είναι μη ορατό και περιέχει τα ονοματεπώνυμα και δίπλα τους αριθμούς μητρώου. Δηλαδή, το βασικό ερώτημα είναι πως μπορεί να γίνεται εμφάνιση ενός φύλλου που έχει αποκρυφθεί, δοθέντος μιας συγκεκριμένης τιμής που θα παίρνει από ένα κελί του πρώτου φύλλου. Δεν ξέρω αν έγινα κατανοητός.Αν απαιτείται να ανεβάσω και ένα πρδ να το κάνω. Με εκτίμηση Τζίμης |
Καλημέρα σε όλους. Αγαπητέ Τζίμη, υπάρχει λύση στο ζητούμενο σου. Ωστόσο, θα σου συνιστούσα να επανεξετάσεις το γεγονός ότι ο μαθητής που θα έχει ΌΛΟ το βιβλίο στη διάθεση του, μπορεί σχετικά εύκολα, έχοντας όλο το χρόνο στη διάθεση του και χωρίς κανέναν κίνδυνο να άρει την προστασία των φύλλων και να αποκτήσει πρόσβαση στα δεδομένα άλλων μαθητών. Για μένα θα έπρεπε ο μαθητής να κάνει Login σε μια Userform της Excel ( ή σε φόρμα Acess ) και αφού δώσει τα στοιχεία του ( Αρ. μαθητολογίου και κωδικό ), η εφαρμογή να δημιουργεί ένα νέο βιβλίο εργασίας Excel όπου θα περιέχονται μόνο τα δεδομένα που αφορούν τον μαθητή. Σε καμία περίπτωση δεν θα επέτρεπα να αποστέλλεται ολόκληρο το βιβλίο σε κάθε μαθητή. Πως γίνεται αυτό τεχνικά: Η εφαρμογή με βοήθεια του διακομιστή OLEDB με ADO ή DAO μπορεί με βάση τα στοιχεία του μαθητή να αντλήσει μόνο τα δεδομένα του φύλλου εκείνου που αντιστοιχεί στοn Αρ. μαθητολογίου. Το να έχεις τα ονόματα των μαθητών στις καρτέλες των φύλλων μπορεί να σου δημιουργήσει θέμα στην αναζήτηση τους αλλά αυτό είναι άλλο θέμα. Μετά απ' αυτά... περιμένουμε νέα σου. Φιλικά Τάσος |
Φίλε Τάσο καταρχή καλή σου μέρα. Πράγματι έχεις απόλυτο δίκαιο.Αυτή την ανησυχία την έχω και εγώ.Όμως: 1.κατά πόσο ένας απλός χρήστης μπορεί να διαθέτει γνώσεις και χρόνο για να ασχοληθεί με κάτι που κατά πάσα πιθανότητα να μην έχει και μεγάλη σημασία; 2.Η λύση που προτείνες είναι η ιδανικότερη.Όμως απαιτεί προχωρημένες προγραμματιστικές γνώσεις για την υλοποίηση και την συντήρηση του προγράμματος που εγώ δεν τις διαθέτω. Με εκτίμηση |
1 Συνημμένο(α) Καλημέρα Τζίμη. Σε κάθε περίπτωση απαιτούνται προχωρημένες προγραμματιστικές γνώσεις για το ζητούμενο σου. Επισυνάπτω ένα παράδειγμα με αρκετά φύλλα, ένα για κάθε μαθητή. Στο παράδειγμα αυτό απαιτείται η επιλογή ονόματος και ο κατάλληλος κωδικός για να εισέλθει ο μαθητής στην εφαρμογή η οποία θα εμφανίσει μόνο το φύλλο εργασίας που του αντιστοιχεί. Επίσης το βιβλίο είναι προστατευμένο με κωδικό περιορίζοντας έτσι ανεπιθύμητες δραστηριότητες... Αν προσπαθήσει κανείς να ανοίξει το βιβλίο χωρίς να έχει ενεργοποιήσει τις μακροεντολές, το μόνο φύλλο που θα δει είναι το φύλλο "Login" το οποίο είναι προστατευμένο με τον κωδικό ''test" (Ο ίδιος κωδικός ισχύει για το βιβλίο εργασίας και το έργο VBA). Για το πρώτο όνομα (Γιάννης) της πτυσσόμενης λίστας Login ο κωδικός είναι Pass01 Ο Γιάννης έχει δικαιώματα διαχειριστή οπότε μετά από επιτυχημένο Login θα μπορεί να βλέπει και να επεξεργάζεται τα πάντα στο βιβλίο εργασίας. Σαν διαχειριστής, μπορεί κανείς στο φύλλο UserNames να τροποποιήσει τους κωδικούς, τα ονόματα φύλλων καθώς και τα δικαιώματα διαχειριστή. Για τα υπόλοιπα ονόματα οι κωδικοί είναι Pass02 , Pass03 κοκ. αντίστοιχα με τη σειρά εμφάνισης των ονομάτων στη λίστα. Όσο για τον κώδικα VBA, πιστεύω ότι μπορείς να τον επεξεργαστείς. Καλή συνέχεια. |
Τάσο ακριβώς αυτό ήθελα.Νομίζω ότι το παράδειγμα αυτό θα βοθήσει και πολλούς άλλους φίλους του forum.Θα μελετήσω όλη την υλοποίηση του παραδείγματος και αν έχω κάποια απορία θα επανέρθω Ένα ευχαριστώ είναι πολύ λίγο Με εκτίμηση Τζίμης |
Τζίμη, χαίρομαι που βοηθήθηκες! Μπορείς να προσθέσεις τον παρακάτω κώδικα στη φόρμα ώστε να μην κλείνει από το πλαίσιο ελέγχου [x]. Κώδικας: Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) |
Τάσο αν θέλω και τα φύλλα εργασίας να είναι προστατευμένα όταν τα ανοίγει ο χρήστης τι πρέπει να κάνω; |
Τζίμη,Μπορείς να κλειδώνεις και τα φύλλα με τον κωδικό πχ. "test" χειροκίνητα ή τροποποιείς τμήματα του κώδικα όπως φαίνεται παρακάτω: Στην λειτουργική μονάδα "ThisWorkbook:" Κώδικας: Private Sub Workbook_BeforeClose(Cancel As Boolean)Κώδικας: Private Sub cmdOK_Click()Τάσος |
Τάσο λειτουργεί άψογα. Να είσαι πάντα καλά για τη μεγάλη βοήθεια που μας προσφέρεις. Τζίμης |
| Η ώρα είναι 14:33. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.