Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ. |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
Αυτόματη συμπλήρωση κελιών
Καλημέρα σε όλους Θέλω στο Excel με κώδικα VBA, να κάνω τα παρακάτω: Έχω σε ένα κελί έναν ακέραιο Π.χ. στο G10. Θέλω να διαβάζει αυτό το κελί και στη συνέχεια να μου τυπώνει τους αριθμούς από το 1 μέχρι και τον ακέραιο που είχε στο G10, αρχίζοντας από το Ι10 και σε αυτήν την γραμμή. Για παράδειγμα εάν βάλουμε στο G10 το 3, να πάει στο I10 και να βάλει 1 , μετά στο J10 και να βάλει 2 μετά στο K10 και να βάλει 3. Εάν βάλω στο G10 το 100, να πάει στα κελιά I10 έως το DD10, όπου θα έχει από το 1 έως το 100 (στο I10 το 1 και στο DD το 100). Παράλληλα θέλω αυτά σε αυτά τα κελιά που συμπληρώνονται να μπαίνει και περίγραμμα. Ευχαριστώ. |
#2
| ||||
| ||||
Καλημέρα Γιώργο, Θεωρώ πως το ζητούμενό σου μπορεί να επιτευχθεί χωρίς VBA και μόνο με τη χρήση απλών τύπων και μορφοποίησης υπό όρους. Ρίξε μια ματιά στο συνημμένο αρχείο αν σε καλύπτει κι αν όντως χρειάζεσαι μόνο VBA, τότε με ενημερώνεις. Έχω βάλει όριο μέχρι το 500. Για περισσότερους αριθμούς, απλά τράβα το τελευταίο κελί της στήλης Ι ή σβήνε τις περιττές γραμμές για λιγότερους.
__________________ Your Curiosity Will Be The Death Of You! |
#3
| |||
| |||
Ευχαριστώ Χρήστο αλλά θέλω με κώδικα. Με τύπους το έχω κάνει και εγώ. Υ.Γ. Οι αριθμοί να βγαίνουν σε γραμμή, οριζόντια και όχι κάθετα. Ευχαριστώ. |
#4
| ||||
| ||||
Για δοκίμασε τον παρακάτω κώδικα: Κώδικας: Sub KATAMETRHSH() Dim I As Long, C As Long If Not IsNumeric([G10]) Then MsgBox "Μη έγκυρος αριθμός!", vbCritical Exit Sub Else I = Abs(Int([G10])) End If Range([I10], Cells(10, Columns.Count)).ClearContents For C = 1 To I Cells(10, 8 + C).Value = C Next End Sub
__________________ Your Curiosity Will Be The Death Of You! |
#5
| |||
| |||
Πολύ ωραίο Χρήστο Ευχαριστώ απλά δεν μπήκαν και τα περιγράμματα των κελιών. Υ.Γ. Από περιέργεια μπορούμε να ορίσουμε με κάποιο τρόπο ένα μεταβλητό Range(), κρατώντας το γράμμα της σειράς και ενώνοντάς το με έναν αριθμό. Κάτι σαν Range("A "I"), ;όπου το Α είναι τα κελιά της στήλης Α και το I, θα δίνεται σε κάποιο κελί σαν αριθμός ή θα υπολογίζεται από κάποιο loop; Να τα ενώνει δηλαδή. Δηλαδή Ι=5, και να βγάζει Range("A5") Ευχαριστώ. |
#6
| ||||
| ||||
Εντός της ημέρας θα ανεβάσω και τον κώδικα με περιγράμματα, γιατί όντως το ξέχασα αυτό το στοιχείο! H ιδιότητα Cells(A,B) είναι ίδια με τη Range() και αναλύεται ως εξής: Α: είναι ο αριθμός της γραμμής Β: είναι ο αριθμός της στήλης Οπότε μπορείς να κάνεις μερικές δοκιμές να δεις πως λειτουργεί. Στον παραπάνω κώδικα χρησιμοποιώ Cells(10, 8+C), όπου αντιστοιχεί στη γραμμή 10 και στη στήλη 8+C με το C να αυξάνεται μέσω του βρόγχου For... Next με αποτέλεσμα να μεταβάλλεται συνεχώς η στήλη ξεκινώντας πάντα από την 9η (8+1). Κάτι τέτοιο χρειάζεσαι;
__________________ Your Curiosity Will Be The Death Of You! |
#7
| ||||
| ||||
Γιώργο, Δοκίμασε το συνημμένο αρχείο αν καλύπτει τις ανάγκες σου. Μαζί με τα περιγράμματα, πρόσθεσα και την επιλογή για οριζόντια (στήλες) ή κάθετη (γραμμές) αρίθμηση για να δεις πως λειτουργούν τα μεταβλητά εύρη.
__________________ Your Curiosity Will Be The Death Of You! |
#8
| |||
| |||
Άψογο Χρήστο ευχαριστώ Να σε ρωτήσω και κάτι, το κουμπί "ΑΡΙΘΜΗΣΗ" που πατάμε για να τρέξει το πρόγραμμα, πως συνδέεται με τον κώδικα. Δεν βρήκα κάπου μέσα "ΑΡΙΘΜΗΣΗ" Ευχαριστώ. Υ.Γ. Αυτό με το CELLS() και το RANGE(), εννοούσα, αν μπορούμε ενώνοντας ένα αλφαριθμητικό π.χ. το Α με έναν ακέραιο ι, π.χ το 23, να κάνουμε μια πραγματική αναφορά στο κελί Α23. Κάτι σαν "Α" & 23 =Α23 (το κελί Α23. Να βγάζουμε δηλαδή κελιά ενώνοντας γράμμα με αριθμό. ) Ευχαριστώ για την υπομονή σου. |
#9
| ||||
| ||||
Καλημέρα Γιώργο, Βάζοντας οποιοδήποτε σχήμα μέσα στο φύλλο εργασίας και κάνοντας διπλό κλικ πάνω του, υπάρχει η επιλογή Αντιστοίχιση μακροεντολής... Από εκεί επιλέγουμε τις δημόσιες υπορουτίνες που έχουμε φτιάξει με κώδικα, οι οποίες θα εμφανιστούν με τα ονόματα που τους έχουμε δώσει. Δεν θα εμφανιστούν οι ιδιωτικές υπορουτίνες, οι οποίες δηλώνονται με τη λέξη Private αριστερά από τη λέξη Sub κατά τη δημιουργία τους. Μερικά παραδείγματα αναφοράς σε κελιά ή εύρη μέσα από τον κώδικα: 1) Range("A23"): κελί A23 2) Cells(45,4) ή Cells(45,"D"): κελί D45 3) Range("B10:B20"): εύρος Β10:Β20 4) Range("F" & I): Οι μεταβλητή Ι είναι ακέραιος αριθμός, όπου μεταβάλλεται ανάλογα τις ανάγκες μας μέσω κώδικα, π.χ. μέσω επαναληπτικού βρόγχου, μέσω αναφορών σε άλλα κελιά κ.τ.λ. Το συγκεκριμένο κελί θα είναι π.χ. F77, όπου I = 77. 5) Range("D" & X & ":E" & Y): Οι μεταβλητές X & Y είναι αριθμοί, όπου μεταβάλλονται ανάλογα τις ανάγκες μας μέσω κώδικα, π.χ. μέσω επαναληπτικού βρόγχου, μέσω αναφορών σε άλλα κελιά κ.τ.λ. Το συγκεκριμένο εύρος θα είναι π.χ. D10:E20, όπου Χ = 10 και Υ = 20. H χρήση των Cells() και Range() εξαρτάται ανάλογα τον τρόπο που θα δημιουργούμε τα εύρη στον κώδικά μας αλλά γενικά η Cells() είναι ταχύτερη από τη Range(), γιατί χρησιμοποιεί κυρίως αριθμούς. Στην περίπτωσή σου, θεωρώ πως τα 1), 2) και 4) καλύπτουν το ζητούμενό σου για αναφορά σε ένα μόνο κελί.
__________________ Your Curiosity Will Be The Death Of You! |
#10
| |||
| |||
Ευχαριστώ Χρήστο
|
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
Παρόμοια Θέματα | ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[Συναρτήσεις] Αυτόματη συμπλήρωση κελιών με IF | aggelaki83 | Excel - Ερωτήσεις / Απαντήσεις | 5 | 24-04-20 23:18 |
[Συναρτήσεις] Αυτόματη συμπλήρωση κελίων | tonisgolf | Excel - Ερωτήσεις / Απαντήσεις | 1 | 10-05-16 18:29 |
[Γενικά] Αυτόματη συμπλήρωση κελιών | mp3-GR | Excel - Ερωτήσεις / Απαντήσεις | 9 | 08-02-16 11:25 |
[Συναρτήσεις] Αυτόματη συμπλήρωση κελιών | rmaria | Excel - Ερωτήσεις / Απαντήσεις | 2 | 25-11-12 22:59 |
[Συναρτήσεις] Αυτόματη συμπλήρωση κελιών | PanosPan | Excel - Ερωτήσεις / Απαντήσεις | 5 | 30-04-10 14:06 |
Η ώρα είναι 19:52.