![]() |
Τιμή σε κελί με checkbox Καλησπέρα σε όλη την παρέα Το ερωτημα μου απόψε είναι σχετικό με το checkbox. Αυτό που προσπαθώ να κάνω είναι όταν τσεκάρω το checkbox να παίρνει ένα κελί μια τιμή η οποία θα είναι κάποιος τύπος και όταν το ξετσεκάρω να σβήνει η τιμή Για παράδειγμα αυτό που κατάφερα να φτιάξω είναι αυτό Private Sub CheckBox1_Click() Range("A1").FormulaR1C1 = "=TODAY()" End Sub Αλλα είτε το τσεκάρω ειτε το ξετσεκάρω παίρνει πάντα την τιμη Προσπαθησα να βρω βοήθεια στο excel αλλα δεν τα κατάφερα Σας ευχαριστώ εκ των προτέρων |
1 Συνημμένο(α) Μανώλη αν σε εξυπηρετεί το check box από τα στοιχεία Φόρμας, δεν χρειάζεται VBA. Δες το συνημμένο. Θανάσης |
Θανάση σε ευχαριστώ για την λύση που μου πρότεινες. Με εξυπηρετεί και θα την χρησιμοποιήσω Εχω δυο ερωτήσεις Η πρώτη είναι εκτος να τα τσεκάρω και να ξετσεκάρω ενα-ενα ,αν μπορώ και όλα μαζί. Και η δεύτερη επειδή εχω 50 εγγραφές προς το παρών αν μπορώ να τα δημιουργήσω ολα μαζί. Δοκίμασα να συρω το κελί που περιέχει το check box προς τα κάτω αλλα μου δίνει σε όλα τα κελιά συνδεση στο κελί $C$4 , επίσης δοκίμασα και $C4 και C4 αλλα τίποτα |
1 Συνημμένο(α) ξεχασα το αρχείο |
Μανώλη ο παρακάτω κώδικας δημιουργεί 20 CheckBoxes στα κελιά Q1:Q20 (προσάρμοσέ την περιοχή στις ανάγκες σου) και καταχωρεί την τιμή FALSE δηλαδή όχι τσεκαρισμένα Πατώντας το CheckBox που καλύπτει το Q3 αλλάζει το περιεχόμενο του κελιου Q3 από FALSE σε TRUE Κάνοντας εισαγωγή κελιών ή γραμμών μεταξύ 5 και 6 τα check boxes μετατοπίζονται και προσαρμόζουν την σύνδεσή τους. Κώδικας: Sub Add_CheckBoxes() |
Θανάση σε ευχαριστώ πολύ για τις λύσεις που μου πρότεινες , με καλύπτουν απόλυτα. Να είσαι πάντα καλά Φιλικά |
1 Συνημμένο(α) Καλησπέρα σε όλη την παρέα. Με την βοήθεια του Θανάση έφτιαξα το αρχείο που επισυνάπτω. Σε αυτό θα ήθελα μια μικρή βοήθεια. 1. Επιλέγουμε την περιοχή που θέλουμε με την γραμμη του κώδικα Const Rng = "Q1:Q20". Εαν θέλουμε να επιλέξουμε μαζί περισσοτερες περιοχές πχ B2:B10 , D2:D10 & F2:F10 πως μπορεί να γίνει ? 2. Oταν τικάρουμε παραπάνω απο 1 σε κάθε περιοχή (βαθμολογητης - επίπεδο) υπάρχει κάποιος τρόπος να μας ειδοποιεί πχ με Μορφοποίηση υπό όρους. ? 3. Κατα το άνοιγμα και το κλείσιμο του αρχείου υπάρχει κάποια καθυστέρηση. Σε αυτό μπορεί να γίνει κάποια βελτίωση? Ευχαριστώ |
1 Συνημμένο(α) Γειά σου Μάνο. Η καθυστέρηση υπάρχει λόγω των check boxes... Είναι απαραίτητο να υπάρχουν; Δες μια πρόταση, με διπλό κλικ, στις σκιασμένες στήλες. Ο κώδικας, είναι σε πολύ αναλυτική μορφή, για να είναι κατανοητό το τι κάνει. Βάζουμε στην αρχή στα consts, την γραμμή έναρξης (ισχύει για 1-255 ...εδώ 3) και την γραμμή λήξης περιοχής (απεριόριστο ...εδώ 52) Επεξήγηση: Με το διπλό κλικ σε ένα κελί, αν υπάρχει κενό, τότε βάζει ένα check, μεταφέρει την τιμή και καθαρίζει όλα τα (υπόλοιπα) διπλανά κελιά. Αν υπάρχει check, το καθαρίζει (διόρθωση για καταχώρηση εκ παραδρομής) Σημείωση: Στις στήλες f,h,j, χρησιμοποιήθηκε η γραμματοσειρά: Marlett με το γράμμα "a" Μπορούμε να χρησιμοποιήσουμε και την: Wingdings 2 με το γράμμα "P" (Αγγλικό Πι, κεφαλαίο) *Είναι πιο όμορφο... |
Καλησπέρα Σπύρο, θα πρέπει να ξαναδείς τη γραμμή κώδικα: If Target.Row < StartRow And Target.Row > End Row Then Exit Sub Έχω τη γνώμη ότι το And θα πρέπει να γίνει Or |
Ναί θέλει Or. Το And, μπήκε εκ παραδρομής... |
Καλησπέρα σε όλη την παρέα Σπύρο σε ευχαριστώ πολύ για την λύση που μου έδωσες. Τα checkbox τα έβαλα γιατί δεν ήξερα άλλο τρόπο. Μάλλον δεν διατύπωσα σωστά το 2ο ερώτημα. Αυτό που θα ήθελα είναι όταν ο 1ος βαθμολογητής τικάρει και 2ο κελί στο ίδιο επίπεδο πχ στην περιοχή F3:F7 να επισημένεται με κάποιο τρόπο. Παράδειγμα εάν τικάρει το F3 και το F5. Η βαθμολογία του κάθε βαθμολογητή είναι ανεξάρτητη. Μπορεί και οι 3 να βάλουν τον ίδιο βαθμό. Οπότε δεν εξυπηρετεί το σβήσιμο των βαθμών στην ίδια σειρά. και πάλι ευχαριστώ Με εκτίμηση |
1 Συνημμένο(α) Καλησπέρα. Μάνο, διόρθωσα το θέμα με την ανεξάρτητη βαθμολογία, καθώς και το ότι μπορεί, ο κάθε ένας από τους τρείς, να βάλει ίδιο βαθμό ανά επίπεδο. Τώρα, Θέλεις να επισημαίνει την ενδεχόμενα δεύτερη βαθμολογία από ίδιο βαθμολογητή ανα επίπεδο; ή μήπως θα ήταν καλύτερα, να την απαγορεύει; |
Καλησπέρα σε όλη την παρέα Σπύρο έχεις δίκιο , καλύτερα να την απαγορεύει Eυχαριστώ |
1 Συνημμένο(α) Καλημέρα Ανοίγοντας το βιβλίο, πάμε στην module: mdl_Consts και βάζουμε τις παραμέτρους που απαιτούνται* *Ο κώδικας, έχει γίνει με τρόπο ώστε, να είναι δυνατή η αλλαγή της φόρμας του φύλλου «Βαθμολογία», πχ να αρχίζουν τα δεδομένα από γραμμή <> 3 ή τα επίπεδα, να έχουν ύψος <> 5 ή οι στήλες μεταξύ b ... e, να είναι περισσότερες ή λιγότερες ή η βαθμολογία να είναι σε στήλη <> d κλπ... Το φύλλο «Βαθμολογία», έχει κωδικό όνομα Sh1, το οποίο και χρησιμοποιεί ο κώδικας. Κάθε βαθμολογητής, μπορεί να βάλει την επιλογή του στην ανάλογη στήλη, ενώ μπορεί να διαγράψει και να διορθώσει μια εκ παραδρομής καταχώρηση. Και οι δύο ενέργειες γίνονται με το διπλό κλικ, είτε νέα καταχώρηση σε κενό κελί, είτε διαγραφή σε κελί με περιεχόμενο (check). Κάθε βαθμολογητής, μπορεί να βάλει μία μόνο επιλογή ανά επίπεδο, αφού ο κώδικας απαγορεύει τα διπλότυπα. Σκέψεις: Κανονικά, θα έπρεπε να υπάρχει και μια «ειδοποίηση» ή κάτι άλλο... αν κάποιος βαθμολογητής εκ παραδρομής, δεν βάλει βαθμό σε κάποιο επίπεδο. Δεν γνωρίζουμε όμως αν είναι υποχρεωτικό να βαθμολογηθούν όλα τα επίπεδα... Όπως επίσεις, αν πρέπει να βαθμολογήσουν και οι τρείς ή αρκεί ο ένας ή οι δύο για να είναι έγκυρο... Από την άλλη, δεν είναι απόλυτα σωστό, να βλέπει ο κάθε βαθμολογητής την βαθμολογία του άλλου... |
Καλημέρα σε όλη την παρέα και καλό μήνα Σπύρο σε ευχαριστώ πολύ για τις διορθώσεις που έκανες. Οσο αφορά τις σκέψεις σου δες τις απαντήσεις με κόκκινο. Σκέψεις: Κανονικά, θα έπρεπε να υπάρχει και μια «ειδοποίηση» ή κάτι άλλο... αν κάποιος βαθμολογητής εκ παραδρομής, δεν βάλει βαθμό σε κάποιο επίπεδο. Ισως να έπρεπε να υπάρχει μια ειδοποίηση εάν δεν έχει συμπληρωθεί βαθμός σε όλα τα επίπεδα. Αν είναι κάτι εύκολο και γρήγορο ας μπει. Ετσι και αλλιως το τελικο αποτέλεσμα είναι πολύ περισσότερο από το αρχικό μου ζητούμενο και δεν θέλω να γίνομαι να βάρος. Δεν γνωρίζουμε όμως αν είναι υποχρεωτικό να βαθμολογηθούν όλα τα επίπεδα... Όλα τα επίπεδα είναι υποχρεωτικά Όπως επίσης, αν πρέπει να βαθμολογήσουν και οι τρείς ή αρκεί ο ένας ή οι δύο για να είναι έγκυρο... Οι βαθμολογητές κατά περίπτωση μπορεί να είναι από 1 έως 3 Από την άλλη, δεν είναι απόλυτα σωστό, να βλέπει ο κάθε βαθμολογητής την βαθμολογία του άλλου Οι βαθμολογητές δεν βλέπουν τις βαθμολογίες γιατί η καταχώρηση γίνεται από κάποιον άλλο ο οποίος συγκεντρώνει τα έντυπα από όλους. Με εκτίμηση |
1 Συνημμένο(α) Μάνο, Σημαντικό Διορθώθηκε ένα λάθος στον κώδικα, άρα αυτό είναι το τελικό σωστό αρχείο. Τώρα Μετά τις διευκρινίσεις, έχουμε: 4) Αφού δεν βλέπουν ο ένας του άλλου όλα καλά... 3) Αφού είναι κατά περίπτωση 1 έως 3, τότε πάντα έγκυρο... 2-1) Αν όλα τα πεδία είναι υποχρεωτικά τότε ...*βλέπε βιβλίο...με ειδοποίηση. Πριν κάνουμε save στο βιβλίο, αν κάθε στήλη βαθμολογητή έχει όλα τα πεδία συμπληρωμένα ή κανένα, τότε είναι σωστό, αλλιώς, μας ειδοποιεί σε ποιά στήλη υπάρχει η παράλειψη... Δοκίμασέ το και πες μου αν έχει κάποιο σφάλμα ή θέλεις κάτι άλλο. Δεν γίνεσαι βάρος, εκτός αν το καλοκαίρι ξέφυγες με τις «ψημένες» και τα πατατάτα!!!:drinks: |
Την ώρα που έγραφα αυτόν τον κώδικα, έγραφα και ακόμα έναν κάπου αλλού, με αποτέλεσμα να μου ξεφύγουν κάποιες λεπτομέρειες... Είπαμε στο post #14, ότι: «...*Ο κώδικας, έχει γίνει με τρόπο ώστε, να είναι δυνατή η αλλαγή της φόρμας του φύλλου «Βαθμολογία»,...» Αν δεν θέλετε να αλλάξετε κάτι από αυτά που είπαμε όλα καλά, ο κώδικας θα δουλέψει... Αν αλλάξετε τη δομή του φύλλου, τότε: Πάμε στην module: mdl_Consts και συμπληρώνουμε στις παραμέτρους και αυτά Κώδικας: Public Const D1Col As Byte = 6Πάμε στον κώδικα του διπλού κλικ και συμπληρώνουμε αμέσως μετά από το Κώδικας: If Target.Row < StartRow Or Target.Row > EndRow Then Exit Sub 'Target, εκτός εμβέλειας γραμμών περιοχήςΚώδικας: If Target.Column <> D1Col And _Κώδικας: Case 6 με Case D1Col |
Καλησπέρα σε όλη την παρέα. Σπύρο να περιμένουμε και άλλες αλλαγές ή να αρχίσω να προσαρμόζω το αρχείο μου ?:a068::a068::a068::a068::friends: Οπως και να έχει σε ευχαριστώ πολύ για τον χρόνο σου. Οσο για το αποτέλεσμα ? Τέλειο :thumbup: Με εκτίμηση Μανώλης Υ.Γ. Οι ψημένες και τα "πατατατα" δεν έκαναν και μεγάλη ζημιά :burp: Και για όσους δεν ξέρουν , η ψημένη είναι κάτι σαν το ρακόμελο και το πατατάτο είναι κρέας με πατάτες όπως τα φτιάχνουμε στην Αμοργό |
Είναι Ok Μάνο, μπορείς να το δουλέψεις. |
1 Συνημμένο(α) Καλημέρα Το αρχείο, περιλαμβάνει τις προσθήκες και αλλαγές του post #17, για όσους δεν μπορούν να το προσαρμόσουν. |
1 Συνημμένο(α) Καλήμερα σε όλους Θα ήθελα την βοήθειά σας αν είναι δυνατόν. Από το παράδειγμά σας πιο μέρος του κώδικα μπορώ να χρησιμοποιήσω στο συνημμένο που επισυνάπτω, ώστε να με το διπλό κλικ να εμφανίζει το check ή να το αφαιρεί; |
1 Συνημμένο(α) Καλημέρα Χρήστο, η περίπτωσή σου είναι πολύ απλή και δεν χρειάζεται τίποτα από τον κώδικα του Μανώλη, γιατί δεν έχεις επίπεδα ή διαφορετικές ενέργειες ανά στήλη κλπ. Ονόμασα την περιοχή f11:aj30 ως iMonthArea και έβαλα την γραμματοσειρά Wingdings 2, ενώ καταργήθηκαν οι dropdown. Στο διπλό κλικ, σε κάθε κελί της περιοχής αυτής, αν είναι κενό τότε βάζει check V Αν υπάρχει check V το κάνει Χ, αν υπάρχει Χ το κάνει κενό. Στον καθαρισμό, επιλέγουμε αν θέλουμε όλα ή μόνο ό,τι επιλέξουμε. Τα κουμπιά καθαρισμού δεν εκτυπώνονται. Αν θέλεις κάτι διαφορετικό πες... |
Σπύρο είναι ΟΚ. Ευχαριστώ παρα πολύ! |
Να 'σαι καλά Χρήστο, καλή συνέχεια. |
Παράθεση:
Γεια σας! Έπεσα τυχαία στη συζήτηση και το αρχείο "Καταγραφή Καθαρισμού" με ενδιαφέρει. Παρατήρησα ότι υπάρχει μορφοποίηση ώστε να αλλάζει χρώμα στις επιπλέον ημέρες της εβδομάδας πέραν των 5. Είναι εφικτό, για τα υπόλοιπα έτη που θα εμφανίζονται στη φόρμα, να αλλάζουν χρώμα φόντου και οι στήλες των ημερομηνιών που θα έιναι επίσημες αργίες; Εάν είναι αυτό εφικτό, τι θα πρέπει να κάνω για να γίνεται; Θα πρέπει να εισάγω κάπου τις ημερομηνίες των επίσημων αργιών του κάθε έτους; Ευχαριστώ πολύ για τον χρόνο σας! |
Στο συγκεκριμένο αρχείο, η μορφοποίηση αφορά τα Σ/Κ. Αυτό που θέλεις, ναι είναι εφικτό αν: Σε ένα άλλο φύλλο, υπάρχουν οι αργίες, όπου φυσικά θα υπολογίζεται και το Πάσχα με συνάρτηση και κάποιες από τις αργίες αυτές, θα εξαρτώνται από το αποτέλεσμα του Πάσχα. Μπορεί ακόμα να καταχωρηθούν και άλλες πληροφορίες εκεί, όπως γεννέθλια, γιορτές ή και τοπικές αργίες... Στο forum υπάρχουν πάρα πολλά παραδείγματα, για να τα μελετήσεις. Κάνε μια έρευνα... |
| Η ώρα είναι 06:14. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.