Σπίτι Κοινωνική Media Πώς να χρησιμοποιήσετε τους For-Next Loops στο Excel 2016 VBA - dummies

Πώς να χρησιμοποιήσετε τους For-Next Loops στο Excel 2016 VBA - dummies

Πίνακας περιεχομένων:

Βίντεο: You Bet Your Life: Secret Word - Tree / Milk / Spoon / Sky 2025

Βίντεο: You Bet Your Life: Secret Word - Tree / Milk / Spoon / Sky 2025
Anonim

Ο απλούστερος τύπος βρόχου στον προγραμματισμό VBA του Excel είναι ένας βρόχος For-Next. Ο βρόχος ελέγχεται από μια μεταβλητή μετρητή, η οποία ξεκινά από μία τιμή και σταματά σε μια άλλη τιμή. Οι δηλώσεις μεταξύ της εντολής For και της εντολής Next είναι οι δηλώσεις που επαναλαμβάνονται στον βρόχο.

Ένα παράδειγμα για επόμενο

Το ακόλουθο παράδειγμα χρησιμοποιεί έναν βρόχο For-Next για να συγκεντρώσει τους πρώτους 1.000 θετικούς αριθμούς. Η μεταβλητή Σύνολο ξεκινά ως μηδέν. Στη συνέχεια συμβαίνει το βρόχο. Η μεταβλητή Cnt είναι ο μετρητής βρόχου. Αρχίζει ως 1 και αυξάνεται κατά 1 κάθε φορά μέσω του βρόχου. Ο βρόχος τελειώνει όταν το Cnt είναι 1, 000.

Αυτό το παράδειγμα έχει μόνο μία δήλωση μέσα στο βρόχο. Αυτή η δήλωση προσθέτει την τιμή του Cnt στη μεταβλητή Total. Όταν ολοκληρωθεί ο βρόχος, ένα MsgBox εμφανίζει το άθροισμα των αριθμών.

Υπομέγιστες αριθμοί () Δημ. Σύνολο ως Διπλό Dim Cnt Όσο μακρύ Σύνολο = 0 Για Cnt = 1 έως 1000 Σύνολο = Σύνολο + Cnt Επόμενο Cnt MsgBox Σύνολο End Sub

Επειδή ο μετρητής βρόχου είναι μια κανονική μεταβλητή, κώδικα για να αλλάξετε την τιμή του μέσα στο μπλοκ κώδικα μεταξύ των καταστάσεων For και Next. Αυτό, ωστόσο, είναι πολύ κακή πρακτική.

Για επόμενα παραδείγματα με βήμα

Μπορείτε να χρησιμοποιήσετε μια τιμή βημάτων για να παρακάμψετε ορισμένες τιμές μετρητή σε ένα βρόχο For-Next. Εδώ είναι το προηγούμενο παράδειγμα, που ξαναγράψαμε για να αθροίσουμε μόνο τους μονούς αριθμούς μεταξύ 1 και 1, 000:

Sub AddOddNumbers () Dim Σύνολο ως Διπλό Dim Cnt Όσο Μακρύ Σύνολο = 0 Για Cnt = 1 έως 1000 Βήμα 2 Σύνολο = Σύνολο + Cnt Επόμενο Cnt MsgBox Total End Sub

Αυτή τη φορά, το Cnt ξεκινάει ως 1 και στη συνέχεια παίρνει τιμές 3, 5, 7 και ούτω καθεξής. Η τιμή Step καθορίζει τον τρόπο με τον οποίο αυξάνεται ο μετρητής. Παρατηρήστε ότι η τιμή του ανώτερου βρόχου (1000) δεν χρησιμοποιείται στην πραγματικότητα επειδή η υψηλότερη τιμή του Cnt θα είναι 999.

Ακολουθεί ένα άλλο παράδειγμα που χρησιμοποιεί μια τιμή βήματος 3. Αυτή η διαδικασία λειτουργεί με το ενεργό φύλλο και εφαρμόζει ανοιχτόχρωμη σκίαση σε κάθε τρίτη γραμμή από τη σειρά 1 έως τη σειρά 100.

Sub ShadeEveryThirdRow () Dim i As Long Για i = 1 έως 100 Βήμα 3 Γραμμές (i). Εσωτερικό. Χρώμα = RGB (200, 200, 200) Επόμενο i End Sub

Ελέγξτε το αποτέλεσμα της εκτέλεσης αυτής της μακροεντολής.

Χρησιμοποιώντας ένα βρόχο για να εφαρμόσετε σκίαση φόντου στις σειρές.

Ένα παράδειγμα για επόμενο παράδειγμα με μια εντολή Exit For

Ένας βρόχος For-Next μπορεί επίσης να περιλαμβάνει μία ή περισσότερες εντολές Exit For μέσα στον βρόχο. Όταν η VBA συναντήσει αυτήν τη δήλωση, ο βρόχος τερματίζεται αμέσως.

Το ακόλουθο παράδειγμα δείχνει τη δήλωση Exit For. Αυτή η ρουτίνα είναι μια διαδικασία Λειτουργίας, που προορίζεται να χρησιμοποιηθεί σε έναν τύπο φύλλου εργασίας.Η συνάρτηση δέχεται ένα όρισμα (μια μεταβλητή με όνομα Str) και επιστρέφει τους χαρακτήρες στα αριστερά του πρώτου αριθμητικού ψηφίου. Για παράδειγμα, εάν το όρισμα είναι "KBR98Z", η συνάρτηση επιστρέφει "KBR. "

Λειτουργία TextPart (Str) Dim i As Long TextPart =" "Για i = 1 Σε Len (Str) Αν IsNumeric (Mid (Str, i, i, 1) End If Next i End Function

Ο βρόχος For-Next ξεκινάει με 1 και τελειώνει με τον αριθμό που αντιπροσωπεύει τον αριθμό των χαρακτήρων στη συμβολοσειρά. Ο κώδικας χρησιμοποιεί τη λειτουργία Mid της VBA για να εξαγάγει ένα μόνο χαρακτήρα μέσα στον βρόχο. Αν βρεθεί ένας αριθμητικός χαρακτήρας, εκτελείται η εντολή Έξοδος για και ο βρόχος τελειώνει πρόωρα.

Εάν ο χαρακτήρας δεν είναι αριθμητικός, επισυνάπτεται στην επιστρεφόμενη τιμή (η οποία είναι ίδια με το όνομα της συνάρτησης). Η μόνη φορά που ο βρόχος θα εξετάσει κάθε χαρακτήρα είναι αν η συμβολοσειρά περάσει δεδομένου ότι το όρισμα δεν περιέχει αριθμητικούς χαρακτήρες.

Ένα ένθετο For-Next παράδειγμα

Μπορείτε να έχετε οποιουσδήποτε αριθμούς δηλώσεων στη θηλιά βρόχου και φωλιές For-Next εντός άλλων βρόχων For-Next.

Το ακόλουθο παράδειγμα χρησιμοποιεί έναν ενσωματωμένο βρόχο For-Next για την εισαγωγή τυχαίων αριθμών σε μια σειρά κυψελίδων 12 σειρών ανά στήλη. Παρατηρήστε ότι η ρουτίνα εκτελεί μία φορά το εσωτερικό βρόχο (το βρόχο με τον μετρητή γραμμών) για κάθε επανάληψη του εξωτερικού βρόχου (ο βρόχος με τον μετρητή Col). Με άλλα λόγια, η ρουτίνα εκτελεί την εντολή Cells (Row, Col) = Rnd 60 φορές.

Αυτά τα κελιά γεμίστηκαν χρησιμοποιώντας ένα βρόχο For-Next.
Sub FillRange () Dim Col As Long Dim Row As Long για Col = 1 έως 5 για Row = 1 έως 12 Cells (Row, Col) = Rnd Next Row Επόμενο Col End Sub

-Next βρόχους για την προετοιμασία ενός τρισδιάστατου πίνακα με την τιμή 100. Αυτή η ρουτίνα εκτελεί τη δήλωση στη μέση όλων των βρόχων (εντολή εκχώρησης) 1, 000 φορές (10 * 10 * 10), κάθε φορά με διαφορετικό συνδυασμό των τιμών για τα i, j, και k:

Sub NestedLoops () Dim MyArray (10,10,10) Dim i As Long Dim j Μεγάλη Dim k Για όσο χρονικό διάστημα i = 1 έως 10 Για j = Για k = 1 έως 10 MyArray (i, j, k) = 100 Επόμενο k Επόμενο j Επόμενο i 'Άλλες δηλώσεις πηγαίνουν εδώ End Sub

Ακολουθεί ένα τελικό παράδειγμα που χρησιμοποιεί τους βρόχους For-Next. Αυτή η διαδικασία δημιουργεί ένα σκακιέρα μεταβάλλοντας το χρώμα φόντου εναλλασσόμενων κελιών.

Χρησιμοποιώντας βρόχους για να δημιουργήσετε ένα σχέδιο σκακιέρας.

Οι βρόχοι μετρητών σειράς από 1 έως 8. Μια κατασκευή If-Then προσδιορίζει ποια ένθετη δομή For-Next θα χρησιμοποιήσει. Για αριθμημένες σειρές με μονό αριθμό γραμμών, ο μετρητής Col ξεκινά με 2. Για αύξοντες σειρές, ο μετρητής Col αρχίζει με 1. Οι δύο βρόχοι χρησιμοποιούν μια τιμή Step 2, έτσι επηρεάζονται τα εναλλακτικά κελιά. Δύο επιπλέον δηλώσεις κάνουν τα κελιά τετράγωνο (ακριβώς όπως ένα πραγματικό σκακιέρα).

Sub MakeCheckerboard () Dim R Όσο μακρύ, C όσο καιρό για R = 1 έως 8 Αν λειτουργούν φύλλο εργασίας. IsOdd (R) Στη συνέχεια για C = 2 έως 8 Βαθμίδα 2 Κύτταρα (R, C). Εσωτερικό. Χρώμα = 255 Επόμενο C Άλλο Για C = 1 έως 8 Βαθμίδα 2 Κύτταρα (R, C). Εσωτερικό. Χρώμα = 255 Επόμενο C End If Next R Rows ("1: 8").RowHeight = 35 Στήλες ("A: H"). ColumnWidth = 6. 5 Τέλος Sub
Πώς να χρησιμοποιήσετε τους For-Next Loops στο Excel 2016 VBA - dummies

Η επιλογή των συντακτών

Η Λογιστική Λογισμικού Fiddle-Faddle - Ανδρείκελα

Η Λογιστική Λογισμικού Fiddle-Faddle - Ανδρείκελα

Απαιτεί είτε μια ολόκληρη δέσμη Fiddle-faddling με αριθμούς ή να μάθουν πώς να χρησιμοποιούν τη διπλή λογιστική βιβλία. Για να δημιουργήσετε αυτές τις δηλώσεις με ένα λογιστικό πρόγραμμα όπως το QuickBooks 2012, πρέπει να χρησιμοποιήσετε λογιστική διπλής εισόδου. Μπορείτε να δημιουργήσετε οικονομικές καταστάσεις χρησιμοποιώντας τη μέθοδο fiddle-faddle. ...

Τα εργαλεία απόφασης QuickBooks 2012 - ανδρείκελα

Τα εργαλεία απόφασης QuickBooks 2012 - ανδρείκελα

Αν είστε επαγγελματίας λογιστής, πιθανώς να μην χρησιμοποιήσετε την Απόφαση Εργαλεία εντολών στο QuickBooks 2012. Ωστόσο, θα πρέπει να γνωρίζετε ότι ορισμένες προηγούμενες εκδόσεις των QuickBooks (εκείνες οι εκδόσεις πριν από το 2009) περιλαμβάνουν μια εντολή Company → Planning & Budgeting → Decision Tools. Εάν αυτή η εντολή είναι διαθέσιμη στην έκδοση QuickBooks και εσείς ή κάποιον από τους πελάτες σας ή ...

Το Δελτίο Ταμειακών Ροών του Εγχειριδίου Επιχειρηματικού Σχεδίου του QuickBooks - ανδρείκελα

Το Δελτίο Ταμειακών Ροών του Εγχειριδίου Επιχειρηματικού Σχεδίου του QuickBooks - ανδρείκελα

16 σειρές υπολογισθέντων δεδομένων. Όπως σε άλλα χρονοδιαγράμματα, ένας προσδιοριστής περιόδου ορίζει τις περιόδους για τις οποίες υπολογίζονται οι τιμές. Η πρώτη περίοδος αποθηκεύεται στο κελί C141 ως ακέραιο 1. Οι περίοδοι που ακολουθούν αποθηκεύονται ως η προηγούμενη περίοδος συν 1. Οι άλλες τιμές της Κατάστασης Ταμειακών Ροών υπολογίζονται ...

Η επιλογή των συντακτών

Πώς να ζωγραφίζει με το Photoshop Elements 11 Βουρτσάκι με ιμπρεσιονιστές

Πώς να ζωγραφίζει με το Photoshop Elements 11 Βουρτσάκι με ιμπρεσιονιστές

11 έχει σχεδιαστεί για να ζωγραφίζει πάνω από φωτογραφίες με τρόπο που τους κάνει να μοιάζουν με έργα ζωγραφικής. Ο καλύτερος τρόπος για να εξοικειωθείτε με το Βούρτσα Ιμπρεσιονιστών είναι να ανοίξετε την αγαπημένη σας εικόνα και να πειραματιστείτε με το εργαλείο. Μπορείτε να ορίσετε διάφορες επιλογές που αλλάζουν το στυλ της ...

Πώς να οργανώσετε τις φωτογραφίες σας στο Photoshop Elements 11

Πώς να οργανώσετε τις φωτογραφίες σας στο Photoshop Elements 11

Μπορείτε να προσθέσετε τόμους φωτογραφιών στο Photoshop Στοιχεία 11 από όχι μόνο σαρωμένες εικόνες και CD / DVD, αλλά και ψηφιακές φωτογραφικές μηχανές, κινητά τηλέφωνα και tablet. Στις πρώτες ημέρες του Adobe Photoshop, περίπου στις αρχές της δεκαετίας του '90 και αργότερα όταν έφτασε το Photoshop Elements, οι περισσότερες φωτογραφίες αποκτήθηκαν από σαρωμένες εκτυπώσεις, σαρωμένες διαφάνειες, κάποιες κάμερες point-and-shoot και ...

Πώς να Paint με το εργαλείο πινέλου στο Photoshop Elements 9

Πώς να Paint με το εργαλείο πινέλου στο Photoshop Elements 9

Το Photoshop Elements δημιουργεί μαλακές κινήσεις. Πόσο μαλακά αυτά τα εγκεφαλικά επεισόδια εξαρτώνται από το ποια βούρτσα χρησιμοποιείτε. Από προεπιλογή, ακόμη και η πιο σκληρή βούρτσα έχει μια ελαφρώς μαλακή άκρη επειδή είναι αντι-αλλιώς. Η αντικατάσταση δημιουργεί μια μόνο σειρά μερικώς γεμάτων εικονοστοιχείων κατά μήκος των άκρων για να παραχθεί η ψευδαίσθηση μιας ομαλής ακμής. Μπορείτε ...

Η επιλογή των συντακτών

Βασικά στοιχεία δικτύου: Κάρτες διεπαφής δικτύου - Dummies

Βασικά στοιχεία δικτύου: Κάρτες διεπαφής δικτύου - Dummies

Κάρτα διασύνδεσης (ή NIC) για να αποκτήσετε πρόσβαση στο δίκτυο. Ένα NIC είναι συνήθως μια ξεχωριστή κάρτα προσαρμογέα που ολισθαίνει σε μία από τις υποδοχές επέκτασης της μητρικής πλακέτας του διακομιστή. Ωστόσο, οι περισσότεροι νεότεροι υπολογιστές διαθέτουν το NIC ενσωματωμένο στη μητρική πλακέτα, οπότε μια ξεχωριστή κάρτα ...

Βασικά στοιχεία δικτύου: OSI Physical Layer < < Βασικά στοιχεία δικτύου: OSI Physical Layer - dummies

Βασικά στοιχεία δικτύου: OSI Physical Layer < < Βασικά στοιχεία δικτύου: OSI Physical Layer - dummies

Το κάτω στρώμα του μοντέλου Open Systems Interconnection (OSI) Φυσική στρώση. Απευθύνεται στα φυσικά χαρακτηριστικά του δικτύου, όπως είναι τα είδη των καλωδίων που χρησιμοποιούνται για τη σύνδεση των συσκευών, οι τύποι των χρησιμοποιούμενων συνδέσμων, η διάρκεια των καλωδίων κ.λπ. Για παράδειγμα, το πρότυπο Ethernet για το καλώδιο 10BaseT καθορίζει ...