VBA Set Range | Οδηγός για τον ορισμό εύρους κελιών στον κώδικα Excel VBA

Ορισμός εύρους στο Excel VBA

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

Αφού εργαστείτε με το Excel τόσο πολλά χρόνια, πρέπει να έχετε καταλάβει το γεγονός ότι όλες οι εργασίες που κάνουμε βρίσκονται στο φύλλο εργασίας και στα φύλλα εργασίας είναι τα κελιά που περιέχουν τα δεδομένα. Επομένως, όταν θέλετε να παίξετε με δεδομένα, πρέπει να είστε ένα μοτίβο συμπεριφοράς κελιών σε φύλλα εργασίας. Έτσι, όταν τα πολλαπλά κελιά συγκεντρώνονται, γίνεται RANGE. Για να μάθετε το VBA θα πρέπει να γνωρίζετε κάθε τι για τα κελιά και τα εύρη. Έτσι σε αυτό το άρθρο, θα σας δείξουμε πώς να ορίσετε λεπτομερώς το εύρος των κελιών που μπορούν να χρησιμοποιηθούν για κωδικοποίηση VBA.

Τι είναι το αντικείμενο εύρους;

Το εύρος στο VBA αναφέρεται ως αντικείμενο. Ένα εύρος μπορεί να περιέχει ένα μόνο κελί, πολλά κελιά, μια σειρά ή στήλη κ.λπ.…

Στο VBA μπορούμε να ταξινομήσουμε το εύρος όπως παρακάτω.

«Εφαρμογή >>> Βιβλίο εργασίας >>> Φύλλο εργασίας >>> Εύρος»

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

Χρησιμοποιώντας το εύρος κελιών μπορούμε να εισαγάγουμε την τιμή στο κελί ή τα κελιά, μπορούμε να διαβάσουμε ή να λάβουμε τιμές από το κελί ή τα κελιά, μπορούμε να διαγράψουμε, να μορφοποιήσουμε και να κάνουμε πολλά άλλα πράγματα επίσης.

Πώς να αποκτήσετε πρόσβαση στο εύρος κελιών στο Excel VBA;

Μπορείτε να κατεβάσετε αυτό το πρότυπο VBA Set Range Excel εδώ - Πρότυπο VBA Set Range Excel

Στην κωδικοποίηση VBA μπορούμε να αναφερθούμε στο κελί χρησιμοποιώντας την ιδιότητα VBA CELLS και το αντικείμενο RANGE. Για παράδειγμα, εάν θέλετε να αναφερθείτε στο κελί A1 τότε πρώτα θα δούμε τη χρήση αντικειμένου RANGE.

Μέσα στην υποδιαδικασία, πρέπει πρώτα να ανοίξουμε το αντικείμενο RANGE.

Κώδικας:

 Sub Range_Examples () Εύρος (End Sub 

Όπως μπορείτε να δείτε πάνω από το αντικείμενο RANGE που ρωτά ποιο είναι το κελί στο οποίο αναφερόμαστε. Πρέπει λοιπόν να εισαγάγουμε τη διεύθυνση κελιού με διπλά εισαγωγικά.

Κώδικας:

 Sub Range_Examples () Range ("A1") End Sub 

Μόλις παρέχεται η διεύθυνση του κελιού, τότε πρέπει να αποφασίσουμε τι να κάνουμε με αυτό το κελί χρησιμοποιώντας ιδιότητες και μεθόδους. Τώρα βάλτε μια τελεία για να δείτε τις ιδιότητες και τις μεθόδους του αντικειμένου RANGE.

Αν θέλουμε να εισαγάγουμε την τιμή στο κελί, τότε πρέπει να επιλέξουμε την ιδιότητα "Value".

Κώδικας:

 Sub Range_Examples () Range ("A1"). Value End Sub 

Για να ορίσουμε την τιμή πρέπει να βάλουμε ένα ίσο σύμβολο και να εισαγάγουμε την τιμή που θέλουμε να εισαγάγουμε στο κελί A1.

Κώδικας:

 Sub Range_Examples () Range ("A1"). Value = "Excel VBA Class" End Sub 

Εκτελέστε τον κωδικό μέσω της επιλογής εκτέλεσης και δείτε τη μαγεία στο κελί A1.

Όπως αναφέρεται στον κώδικα έχουμε την τιμή στο κελί A1.

Ομοίως, μπορούμε να αναφερθούμε στο κελί χρησιμοποιώντας την ιδιότητα CELLS επίσης. Ανοίξτε την ιδιότητα CELLS και δείτε τη σύνταξη.

Αυτό είναι διαφορετικό από το αντικείμενο RANGE όπου μπορούμε να εισαγάγουμε τη διεύθυνση κελιού απευθείας σε διπλά εισαγωγικά, αλλά πρέπει να δώσουμε τον αριθμό σειράς και τη στήλη για να αναφερθούμε στο κελί. Εφόσον αναφερόμαστε στο κελί A1 μπορούμε να πούμε ότι η σειρά είναι 1 και η στήλη είναι 1.

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

Επομένως, πρέπει να είστε ειδικός για να ανατρέξετε στα κελιά χρησιμοποιώντας την ιδιότητα CELLS.

Κώδικας:

 Υπο CELLS_Παράδειγμα () Κελιά (1, 1). Αξία = "Excel VBA Class" End Sub 

Πρόσβαση σε πολλαπλά κελιά & Ρύθμιση αναφοράς εύρους στο VBA

Μία από τις μεγάλες διαφορές μεταξύ CELLS & RANGE είναι η χρήση CELLS, μπορούμε να έχουμε πρόσβαση μόνο σε ένα κελί, αλλά χρησιμοποιώντας το RANGE μπορούμε επίσης να έχουμε πρόσβαση σε πολλά κελιά.

Για παράδειγμα, για τα κελιά A1 έως B5, αν θέλουμε την τιμή των 50, τότε μπορούμε να γράψουμε τον κωδικό όπως παρακάτω.

Κώδικας:

 Sub Range_Examples () Εύρος ("A1: B5"). Τιμή = 50 End Sub 

Αυτό θα εισαγάγει την τιμή 50 από το κελί A1 έως B5.

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

Αρχικά, ορίστε τη μεταβλητή ως το αντικείμενο "Range".

Κώδικας:

 Υπο Range_Examples () Dim Rng ως Range End Sub 

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

Για να ορίσουμε την αναφορά πρέπει να χρησιμοποιήσουμε τη λέξη-κλειδί "SET" και να εισαγάγουμε τις διευθύνσεις κελιού χρησιμοποιώντας το αντικείμενο RANGE.

Κώδικας:

 Υπο Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") End Sub 

Τώρα η μεταβλητή "Rng" αναφέρεται στα κελιά A1 έως B5.

Αντί να γράψουμε το εύρος διεύθυνσης κελιού ("A1: B5") μπορούμε απλώς να χρησιμοποιήσουμε το όνομα μεταβλητής "Rng".

Κώδικας:

 Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") Rng.Value = "Range Setting" End Sub 

Τώρα αυτό θα εισαγάγει την αναφερόμενη τιμή από το κελί A1 στο κελί B5.

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

Κώδικας:

 Sub Range_Examples () Dim Rng As Range Set Rng = Selection Rng.Value = "Range Setting" End Sub 

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

Για παράδειγμα, θα επιλέξω ορισμένα κελιά.

Τώρα θα εκτελέσω τον κώδικα και θα δω τι θα συμβεί.

Για όλα τα επιλεγμένα κελιά έχει εισαχθεί η τιμή.

Έτσι, μπορούμε να ορίσουμε την αναφορά εύρους δηλώνοντας μεταβλητές στο VBA.

Πράγματα που πρέπει να θυμάστε

  • Το εύρος μπορεί να επιλέξει πολλά κελιά, αλλά το CELLS μπορεί να επιλέξει ένα κελί τη φορά.
  • Το RANGE είναι αντικείμενο και το CELLS είναι ιδιοκτησία.
  • Κάθε μεταβλητή αντικειμένου πρέπει να ορίσει την αναφορά του αντικειμένου χρησιμοποιώντας τη λέξη-κλειδί SET