![]() |
Ικανοποίηση συνθήκης βάσει ημερομηνίας 1 Συνημμένο(α) Γεια σας! Δεν ξέρω πόσο πιο συγκεκριμένα και με λίγα λόγια να περιγράψω το ζητούμενο στον τίτλο. Στο βιβλίο έχω μια στήλη με ημερομηνίες. Σε ένα κελί έχω αναπτυσσόμενη λίστα με επιλογές. Αυτό που χρειάζομαι είναι το εξής. Για την επιλογή Α, στις αναπτυσσόμενες λίστες, θέλω στην στήλη 1ο να εμφανίζονται οι διαθέσιμες ημερομηνίες που είναι καταχωρημένες στη στήλη B, από 1 έως και 15 Ιανουαρίου, στην στήλη 2ο, από 16 έως και 31 Ιανουαρίου, στην στήλη 3ο, από 1 έως και 15 Φεβρουαρίου, στην στήλη 4ο, από 16 έως και 28 Φεβρουαρίου (ισχύει ότι θα προτιμηθεί να μην καταχωρηθεί η 29η στα δίσεκτα, εάν παίζει ρόλο). Αντίστοιχα για Β Γ και Δ θα ισχύουν τα ίδια, απλά θα αλλάξω τις ημερομηνίες. Έχω ένα παράδειγμα στο βιβλίο για το Α και το Β σε δύο ξεχωριστά φύλλα. Εάν το κατανόησε κάποιος το ζητούμενο, γίνεται αυτό; Ευχαριστώ πολύ |
Ψάχνοντας βρήκα το παρακάτω, τροποποιώντας το στο κανονικό μου βιβλίο. Όμως παρέλειψα κάτι σημαντικό, εάν έχω 2 φορές και περισσότερες την ίδια ημερομηνία θέλω να εμφανίζεται μόνο μια φορά στις στήλες. Παρακάτω έχω χρωματίσει για να ξεχωρίσετε τα κομμάτια για τα Α Β Γ και Δ. Και πάλι ευχαριστώ Κώδικας: IF($U$4="Α";INDEX('Φύλλο1'!$E$10:$E$2001;SMALL(IF('Φύλλο1'!$E$10:$E$2001>='Φύλλο2'!$N$1;IF('Φύλλο1'!$E$10:$E$2001<='Φύλλο2'!$O$1;ROW('Φύλλο1'!$E$10:$E$2001)-ROW('Φύλλο1'!$E$10)+1));ROWS('Φύλλο2'!$N$1:N1))); |
1 Συνημμένο(α) Καλησπέρα Σταμάτη, δες μια πρόταση στο συνημμένο. Χρησιμοποιώ κώδικα. |
Καλησπέρα Γιώργο, σε ευχαριστώ πολύ που απάντησες. μετέφερα τον κώδικα στο βιβλίο μου, ενημέρωσα τις 3 περιοχές που έχεις βάλει στα Const μόνο που δε ξέρω αν το έχω σωστό το παρακάτω γιατί είναι σε άλλο φύλλο Κώδικας: Const startCel As String = Φύλλο06.Range("E10")Παράθεση:
Παράθεση:
|
Σταμάτη το φύλλο, που έχει το Combo Box, στο οποίο θα γίνονται οι επιλογές είναι το ενεργό. Δεν έχει σημασία το όνομά του. Εκείνο που χρειάζεται είναι η προσθήκη του κώδικα και η αναγραφή, μέσα σε εισαγωγικά, των σωστών κελιών (χωρίς το όνομα φύλλου) στις εντολές Const. |
Έχω μεταφέρει όλον τον κώδικα στο ενεργό φύλλο, στο βιβλίο μου. Ήθελα να πω πως η λίστα με τις ημερομηνίες καταχωρούνται σε άλλο φύλλο. Όχι στο ενεργό, οπότε δεν πρέπει να γράψουμε το όνομα του φύλλου; Επειδή είδα ότι στη συγκεκριμένη εντολή αναγράφεις το πρώτο κελί της λίστας με τις ημερομηνίες έβαλα το παραπάνω. |
Βάλε στο ενεργό φύλλο τον παρακάτω κώδικα: Κώδικας: Option Explicit |
Όχι που δε θα το έβρισκες, είναι αυτό ακριβώς που ζητούσα! Γάτος είσαι Γιώργο, χίλια ευχαριστώ! |
Καλή συνέχεια Σταμάτη. Να είσαι καλά! |
Άσχετο με το ζητούμενο, όταν πχ σε ένα βιβλίο έχεις 2000 σειρές σε μια στήλη όπου πρέπει να έρθει ένα αποτέλεσμα από ένα φύλλο, βάσει του αριθμού που έχει δίπλα του, στη διπλανή στήλη δηλαδή, τι είναι προτιμότερο; μια ίδια συνάρτηση στα 2000 κελιά της στήλης ή κωδικας; |
| Η ώρα είναι 20:05. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.