Βρόχοι VBA Do - Πώς να χρησιμοποιήσετε το Excel VBA Do Loops;

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

Excel VBA Do Loop

VBA Do loop , είναι ένα σύνολο οδηγιών μέσα σε μια υπο διαδικασία όπου ο κώδικας εκτελεί συγκεκριμένες φορές μέχρι να επιτευχθεί το επιθυμητό κριτήριο ή να ξεπεραστεί οποιοδήποτε όριο ή να είναι ασφαλές να το πω μέχρι να ληφθούν τα απαιτούμενα δεδομένα.

Ενώ ο βρόχος λειτουργεί με λογικά αποτελέσματα, συνεχίζει να τρέχει τον βρόχο εμπρός και πίσω ενώ η κατάσταση δοκιμής είναι ΑΛΗΘΕΙΑ Τη στιγμή που η κατάσταση δοκιμής επιστρέφει FALSE, θα βγει από το βρόχο. Οι βρόχοι αποτελούν την καρδιά οποιασδήποτε γλώσσας προγραμματισμού. Στα άρθρα μας, καταδεικνύουμε τη σημασία των βρόχων και των τρόπων κωδικοποίησής τους. Σε αυτό το άρθρο, σας δείχνουμε πώς να χρησιμοποιήσετε το Do Loop.

Πώς να χρησιμοποιήσετε το VBA Do Loop;

Παράδειγμα # 1 - Κατάσταση στο τέλος του βρόχου

Έχουμε δει τη δοκιμή κατάστασης στην αρχή του βρόχου. Στον προηγούμενο κώδικα, έχουμε δει το παράδειγμα εισαγωγής σειριακών αριθμών και ο κώδικας ήταν έτσι.

Κώδικας:

Sub Do_While_Loop_Example1 () Dim k As Long k = 1 Do While k <= 10 Cells (k, 1). Value = kk = k + 1 Loop End Sub

Τώρα μπορείτε να εκτελέσετε αυτόν τον κώδικα χειροκίνητα ή μέσω του πλήκτρου συντόμευσης F5 για να δείτε το αποτέλεσμα.

Αυτός ο κωδικός θα εισαγάγει σειριακούς αριθμούς από 1 έως 10.

Αλλά μπορούμε επίσης να δοκιμάσουμε την κατάσταση στο τέλος του βρόχου. Πρέπει να χρησιμοποιήσουμε τη λέξη "while" και τη δοκιμή συνθηκών στο τέλος μετά τη λέξη Loop.

Η μόνη αλλαγή εδώ είναι η εφαρμογή της δοκιμής στο τέλος, όπως φαίνεται παρακάτω.

Κώδικας:

Sub Do_While_Loop_Example1 () Dim k As Long k = 1 Do Cells (k, 1). Value = kk = k + 1 Loop While k <= 10 End Sub

Έτσι, μπορούμε επίσης να δοκιμάσουμε την κατάσταση στο τέλος της δήλωσης βρόχου.

Σημείωση: Ο κώδικας θα εκτελεστεί και, στη συνέχεια, θα δοκιμάσει την κατάσταση για να επιστρέψει για άλλη μια φορά ή όχι. Αυτό σημαίνει ότι θα τρέξει πρώτα και μετά θα δοκιμάσει την κατάσταση αργότερα.

Παράδειγμα # 2 - Άθροισμα με χρήση Do While Loop

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

Τώρα πρέπει να πάρουμε την αξία του κέρδους στη στήλη Γ. Έχω ήδη δημιουργήσει έναν κώδικα που θα κάνει δουλειά για μένα.

Κώδικας:

Sub Do_While_Loop_Example2 () Dim k As Long Dim LR As Long k = 2 LR = Cells (Rows.Count, 1). End (xlUp). Row Do While k <= LR Cells (k, 3). Value = Cells (k , 1) + κελιά (k, 2) k = k + 1 Loop End Sub
LR = Κελιά (Rows.Count, 1). End (xlUp). Row

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

k = 2

Θέλουμε να γίνει ο υπολογισμός από το δεύτερο κελί και μετά. Έτσι, η αρχική τιμή του k είναι 2.

Κάνετε ενώ k <= LR

Όπως είπα, η LR θα βρει την τελευταία γραμμή που χρησιμοποιήθηκε στην πρώτη στήλη. Αυτό σημαίνει ότι ο βρόχος θα τρέξει ενώ το k είναι <= στην τιμή του LR. Σε αυτήν την περίπτωση, έχω 10 σειρές, οπότε LR = 10.

Ο βρόχος θα τρέξει έως ότου η τιμή k φτάσει το 10. Μόλις το ποσό περάσει 10 βρόχους, θα σταματήσει.

Τώρα μπορείτε να εκτελέσετε αυτόν τον κωδικό χρησιμοποιώντας το πλήκτρο συντόμευσης F5 ή χειροκίνητα για να δείτε το αποτέλεσμα.

Παράδειγμα # 3 - Δήλωση εξόδου στο Do While Loop

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

Ας υποθέσουμε ότι δεν θέλετε να κάνετε τον πλήρη υπολογισμό, αλλά πρέπει να υπολογίσετε μόνο τις πρώτες 5 σειρές κέρδους και μόλις φτάσει στην σειρά, θέλετε να βγείτε από το βρόχο. Αυτό μπορεί να γίνει χρησιμοποιώντας τη συνάρτηση IF στο excel. Ο παρακάτω κώδικας περιλαμβάνει τη δήλωση εξόδου.

Κώδικας:

Sub Do_While_Loop_Example3 () Dim k As Long Dim LR As Long k = 2 LR = Cells (Rows.Count, 1). End (xlUp). Row Do While k 6 then Exit Do Cells (k, 3). Value = Cells ( k, 1) + κελιά (k, 2) k = k + 1 Loop End Sub
“If k> 6 Then Exit Do”

This line of code will initiate the exit process. Loop will keep running until the value of k reaches 6. The moment it exceeds 6, If condition will execute the code, “Exit Do.”

Now you can run this code using shortcut key F5 or manually to see the result.

Things to Remember

  • Do. The loop works on logical results, and it keeps running the loop back and forth while the test condition is TRUE. The moment the test condition returns FALSE, it will exit the loop.
  • We can exit the loop at any given time by adjusting one more logical test inside the circle by using the IF function.
  • If the condition or test is supplied at the top of the loop, it will first check the test and progress further only if it is TRUE.
  • Εάν η συνθήκη ή η δοκιμή παρέχεται στο τέλος του βρόχου, θα εκτελέσει πρώτα το μπλοκ του κώδικα μέσα στη δήλωση βρόχου και στο μέλλον, θα ελέγξει τη συνθήκη για να αποφασίσει αν θα επιστρέψει για να εκτελέσει το βρόχο για άλλη μια φορά ή όχι.

ενδιαφέροντα άρθρα...