![]() |
αυτόματη συμπλήρωση και διαμόρφωση κελιού 1 Συνημμένο(α) Καλησπέρα, Θα χρειαστώ την βοήθειά σας. Επιθυμώ σε κελιά όπου είναι κενά ή μηδενικά, να έρχεται αυτόματα η τιμή από συγκεκριμένη στήλη, και να γίνεται ταυτόχρονα διαμόρφωση του κελιού (γραμματοσειρά, χρώμα κλπ). Επισυνάπτω σχετικό παράδειγμα. Κάθε πρόταση, παραπλήσια της αρχικής μου σκέψης, φυσικά και είναι ευπρόσδεκτη. Ευχαριστώ πολύ. |
Καλησπέρα Αντώνη, παρ' όλο που το ζητούμενο είναι σαφές, υπάρχει μια ασάφεια στον τρόπο με τον οποίον θα το δουλεύεις το όλο πράγμα... Θα δουλεύεις δηλαδή επάνω στην στήλη Κ, και αν διαγράψεις πχ ένα κελί θα πάρει την ανάλογη τιμή από την Η; *Αυτό δεν μου πάει, από την άποψη ότι η Κ έχει παλαιότερο έτος... Θα δουλεύεις στην στήλη Η, και ανάλογα με το αποτέλεσμα, θα μεταφέρονται πράγματα στην Κ; *Εδώ τι θα γίνει αν «γεμίσουν» όλα τα κελιά της Κ; Το χρώμα θα παραμένει παντού, ή θα μπαίνει στη τελευταία αλλαγή και μόνο; Παρακαλώ διευκρίνισε, διότι θα παίξει και ρόλο στην μέθοδο που θα πρέπει να ακολουθήσουμε... |
1 Συνημμένο(α) Σπύρο καλημέρα, Η στήλη H που αφορά το 2018 θα έχει πάντα τιμή. Εγώ θέλω να υπολογίζω στη συνέχεια πόσο θα ήταν τα σύνολα του 2018 με τις τιμές του 2017. Και για υπάρχει συνάφεια στο συγκριτικό αποτέλεσμα θα ήθελα όπου δεν υπάρχει αξία στο 2017 (νέο είδος του 2018), να παίρνει αυτόματα την ίδια τιμή με το 2018. Επίσης έχω να πρόβλημα με την μορφοποίηση υπό όρους για να εμφανίσω την αύξηση ή τη μείωση της τιμής με βέλη. Ευχαριστώ θερμά |
1 Συνημμένο(α) Καλημέρα. Φίλε Αντώνη, το σκεπτικό σου νομίζω έχει ένα κενό... Καταλαβαίνω, ότι θέλεις να κάνεις μια σύγκριση των πωλήσεων ανά είδος, αλλά έχω την εντύπωση, ότι δεν το ξεκινάς καλά, με την έννοια, ότι υπάρχουν παράμετροι, που πρέπει να ληφθούν υπ' όψιν με διαφορετικό τρόπο... Δεν μπορεί να έχεις εικόνα του 2018, υπολογίζοντας νέα προϊόντα (του '18) ότι τα είχες και το 2017... Ακόμα, πρέπει να ληφθεί υπ' όψιν και πιθανή αυξομείωση της τιμής ενός προϊόντος, με βάση κάποιες ημερομηνίες... Εξηγούμαι... Έστω Item1 το 2017 με 100 πωλήσεις και τιμή 10 = αποδίδει 1000, Ok? Αν τον Φεβρουάριο του 2018, η τιμή αυξηθεί σε 12 και έχουμε ίδιες πωλήσεις τι θα πείς... ότι αφού έχει τώρα 1200, πήγε καλύτερα από πέρσυ; Νομίζω λοιπόν, ότι πρώτα πρέπει να δεις την σύγκριση στα τεμάχια, να λάβεις υπ' όψιν σου το επισυναπτόμενο που έχω ανεβάσει και πιο παλιά (2015) στο forum που είναι μια ΒΔ, για προϊόντα που αλλάζουν τιμές και μετά (στο τέλος) να μπεί μια παράμετρος που να λέει 2017 = 5000 με 10 items 2018 = 7000 με 12 items 2018 = 6000 με τα 10 ίδια items του 2017 (και με ίδια τιμή) 2018 = 1000 με τα νέα items 2018 = 200 (η διαφορά προς τα επάνω) με την αύξηση σε μερικά items και πάει λέγοντας... Σε γενικές γραμμές, αν θέλεις 100% αποτέλεσμα, δεν είναι απλό το ζήτημά σου... |
Σπύρο ευχαριστώ για την απάντηση. Τα είδη του 2017 που δεν έχουν αξία δεν έχουν και ποσότητα (οι αριθμοί τοποθετήθηκαν εκ παραδρομής). Θα τα λάβω υπόψιν μου όσα αναφέρεις καθώς και το βοηθητικό αρχείο που έστειλες. Παρόλα αυτά θα ήθελα να παίρνω αυτόματα την αξία (αν υπάρχει κάποιος τρόπος). Επίσης αν μπορείς δώσε μου τα φώτα σου στα βελάκια με την μορφοποίηση υπό όρους. 3 βελάκια για αύξηση , μείωση, σταθερή τιμή. Ευχαριστώ. |
Αντώνη αν δεν βιάζεσαι, απάντηση το απόγευμα, πρέπει να φύγω Ευχαριστώ... |
Σπύρο κανένα πρόβλημα. Όποτε μπορέσεις. Ευχαριστώ πολύ για το ενδιαφέρον. |
1 Συνημμένο(α) Στο βιβλίο, ένα υπόδειγμα με οδηγίες για: Τύπους Μορφοποίηση με χρώμα Μορφοποίηση με Icon set Πάντως, με βάση όσα είπα και πριν, αν υποθέσουμε ότι έχουμε πραγματικά δεδομένα, η διαφορά είναι τεράστια (κελιά L29-M29), για να έχω έστω και στο περίπου, εικόνα πωλήσεων… |
Σπύρο χίλια ευχαριστώ!!! Δεν έχω λόγια..... Άψογη ανάλυση και παρουσίαση!!! |
Να 'σαι καλά, καλή συνέχεια! |
Παράθεση:
Θέλω να χρησιμοποιήσω την εντολή που έχεις φτιάξει στο συγκεκριμένο excel (δείξε / κρύψε ποσοστά) , σε ένα άλλο αρχείο excel. Είναι εύκολη μια βοήθεια; Προσπάθησα αλλά μάταια!!! Ευχαριστώ πολύ |
3 Συνημμένο(α) Έστω σε κάποιο φύλλο, θέλουμε να ανοιγουν και να κλείνουν ορισμένες στήλες. Παράδειγμα, (*βλέπε εικόνα 1), οι στήλες e,g,i...ή όποιες άλλες. Αν πάμε με τον κέρσορα, στο επάνω μέρος μιας στήλης και στην διαχωριστική γραμμή, (με την διπλανή της), ο κέρσορας γίνεται «σταυρός» και αν κάνουμε κλικ, τότε (*βλέπε εικόνα 2) εμφανίζεται το πλάτος της στήλης. Σημειώνουμε το πλάτος (πχ 20,00) και όχι τα pixels... Βάζουμε ένα κουμπί (πχ διάφανο Rectangle *βλέπε εικόνα 3) γράφουμε τι θα κάνει και το συνδέουμε με μια εντολή. Η Εντολή τώρα, στο κλικ του σχήματος: Κώδικας: Sub Rectangle1_Click()και ταυτόχρονα στο φύλλο Sheet1 (κωδικό όνομα), η στήλη g, έχει πλάτος =Χ και ταυτόχρονα στο φύλλο Sheet1 (κωδικό όνομα), η στήλη i, έχει πλάτος =Χ ... τότε να γίνει μηδέν. Αλλιώς να είναι (το πλάτος όλων των στηλών) =Χ Καλό είναι, οι στήλες να έχουν το ίδιο πλάτος. Παρατηρήσεις: Υπάρχει και καλύτερη μέθοδος όμως....με πιο βελτιωμένο κώδικα, γιατί μπορεί να έχουμε πολλές στήλες που θέλουμε να ανοιγοκλείνουν. Στο βιβλίο που ανέβασα τότε, οι στήλες ήταν μόνο τρείς και δεν ήταν και σκοπός να δείξω αυτό, αλλά τους τύπους ενημέρωσης τιμών... Γράψε μου το φύλλο (κωδικό όνομα) και ποιές στήλες θέλεις να κλείνεις-ανοίγεις να στο στείλω το απόγευμα... |
Σπύρο καλησπέρα, Το φύλλο θα λέγεται monthly price και οι στήλες που θα "ανοιγοκλείνουν" θα είναι: e,g,h,j,k,m,n,p,q,s,t,v,w,y Εφόσον υπάρχει και κάποιος βελτιωμένος κώδικας για απόκρυψη/επανεμφάνιση πολλαπλών στηλών αδημονώ :victory: να τον δω στην πράξη (μόνο αν κάτι τέτοιο είναι εφικτό από την πλευρά σου) :thumbup1: Ευχαριστώ θερμά, |
2 Συνημμένο(α) Καλησπέρα Στο βιβλίο, υπάρχει μια ρουτίνα, που μας επιτρέπει να εμφανίσουμε και με το ίδιο κουμπί (toggle), να κρύψουμε κάποιες στήλες της επιλογής μας. Ο κώδικας, δεν χρειάζεται καμία τροποποίηση ως προς την δομή του, όπου κι αν τον χρησιμοποιήσουμε, αρκεί να βάλουμε μόνο, το κωδικό όνομα του δικού μας φύλλου, στην θέση του Sheet1. (*βλέπε εικόνα) Optional: Αν κάποιος θέλει, μπορεί να το μετατρέψει σε ActiveSheet... Επιτρέπονται δεδομένα μετά την Υ στήλη (στο παράδειγμα μας η τελευταία που εμπλέκουμε) ή και πριν από την Ε (στο παράδειγμα μας η πρώτη που εμπλέκουμε) Οι τίτλοι και τα δεδομένα, μπορούν να είναι σε οποιαδήποτε γραμμή. Πως λειτουργεί: Πάμε στο σημείο Κώδικας: Select Case iμε κόμμα ανάμεσα και αυτό είναι όλο... Βρίσκει αυτόματα, την τελευταία χρησιμοποιούμενη στήλη του φύλλου και κάνει την εμφάνιση-απόκρυψη, ανάλογα με την επιλογή μας. Μπορούσαμε να χρησιμοποιήσουμε και άλλες μεθόδους για την τελευταία στήλη, όπως: Κώδικας: lColumn = ws.Cells(1, Columns.Count).End(xlToLeft).ColumnΚώδικας: lColumn = ws.UsedRange.Columns.Countαλλά η Cells.Find(.... θεωρώ ότι είναι η πιο αξιόπιστη απ' όλες και δεν χρειάζεται ο χρήστης, να προσέξει τίποτα απολύτως, στο που θα βάλει τίτλους, σε ποιά γραμμή κλπ... Παρατήρηση: Θα μπορούσε κανείς να πεί, ότι ίσως είναι πλεονασμός να έχουμε τις γραμμές κώδικα, που ασχολούνται με την τελευταία στήλη, να τις παραλείψουμε και να πάμε να βάλουμε «καρφωτά» έναν αριθμό εδώ: Κώδικας: For i = 1 To 30εκτός του να προσθέτει άλλες στήλες στην επιλογή του, να το αλλάζει και αυτό αν βάζει κι άλλα δεδομένα δεξιότερα... *να έχει καρφωτά ως τελευταίο το 30 και να θέλει να ανοιγοκλείνει και η 45 στήλη |
Σπύρο καλησπέρα, Ευχαριστώ και πάλι για την άμεση λύση και πρόταση. Είσαι άψογος πάντα!!! Καλή συνέχεια |
1 Συνημμένο(α) Σπύρο και πάλι τα φώτα σου!!! Έκανα αντιγραφή της καρτέλας στο ίδιο αρχείο, και δεν δουλεύει. Βλέπω ότι ενώ άλλαξα την ονομασία της καρτέλας, κάτι δεν πάει καλά. Σου επισυνάπτω το δείγμα. Σίγουρα κάτι δεν "εκτελώ σωστά" Ευχαριστώ |
1 Συνημμένο(α) Καλησπέρα Και μια άλλη πρόταση. Εφόσον μας ενδιαφέρει μόνο η απόκρυψη και η εμφάνιση συγκεκριμένων στηλών σε ένα φύλλο, δε χρειάζεται να ασχοληθούμε με τη θέση των δεδομένων στο φύλλο. Ο παρακάτω κώδικας κάνει ακριβώς αυτό: Κώδικας: Public Sub HideUnHideCols() |
Γράφω... «Ο κώδικας, δεν χρειάζεται καμία τροποποίηση ως προς την δομή του, όπου κι αν τον χρησιμοποιήσουμε, αρκεί να βάλουμε μόνο, το κωδικό όνομα του δικού μας φύλλου, στην θέση του Sheet1. (*βλέπε εικόνα) Optional: Αν κάποιος θέλει, μπορεί να το μετατρέψει σε ActiveSheet...» Άρα ή βάζεις το κωδικό όνομα του νέου φύλλου (Sheet2) ή επειδή βλέπω ότι πας να βάλεις φύλλα με μήνες, θα το κάνεις ActiveSheet |
Η αλήθεια είναι, ότι το σκεφτόμουν αρκετά... πριν προτείνω τον κώδικα που έγραψα... Η πρώτη σκέψη, ήταν να γράψω ακριβώς τον κώδικα του Γιώργου, ο οποίος, κάνει πολύ απλά τη δουλειά, 100%. Μετά και μην γνωρίζοντας τη δομή του έργου του Αντώνη, αποφάσισα να γράψω αυτό που τελικά ανέβασα, για τον εξής απλό λόγο... Περίμενα, να ακολουθήσει (ίσως) και μια άλλη συμπληρωματική ερώτηση, όπως συνήθως γίνεται από πολλά μέλη, που να λέει για παράδειγμα, «ναι Ok, αλλά θέλω και αυτές τις στήλες να κάνουν το Χ και αυτές το Ψ... Γι' αυτό και το select case, μου φάνηκε ιδανικό, για τροποποιήσεις και συμπληρώματα. Οπότε, αν όσοι μας διαβάζετε, θέλετε μόνο εμφάνιση-απόκρυψη, να αντιγράψετε τον κώδικα του Γιώργου. |
Καλημέρα, Σας ευχαριστώ πολύ για τη βοήθεια και τις λύσεις. Πως γίνονται φύλλα Active Sheet; Ναι στο ίδιο αρχείο θα χρησιμοποιήσω φύλλα με μήνες, και θέλω σε όλα τα φύλλα να "τρέξει" αυτό με την εμφάνιση/απόκρυψη στηλών. Ευχαριστώ πολύ και πάλι |
Καλημέρα, Οκ έκανα αντιγραφή του φύλλου και δουλεύει. Δεν πείραξα κάτι, αλλά παρατηρώ ότι δουλεύει και στο νέο φύλλο. Ευχαριστώ πολύ:thanks: |
Να είσαι καλά και καλή συνέχεια! |
| Η ώρα είναι 12:24. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.