Λειτουργία VBA OFFSET - Τρόπος χρήσης της ιδιότητας Offset Excel VBA (Παράδειγμα)

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

Λειτουργία OFFSET Excel VBA

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

Για παράδειγμα, ας υποθέσουμε ότι έχετε ένα σύνολο δεδομένων όπως το παρακάτω.

Τώρα από το κελί A1, θέλετε να μετακινήσετε προς τα κάτω 4 κελιά και θέλετε να επιλέξετε αυτό το 5ο κελί, δηλαδή, το κελί A5.

Παρομοίως, εάν θέλετε να μετακινηθείτε προς τα κάτω από τις σειρές A1 cell 2 και πηγαίνετε 2 στήλες προς τα δεξιά και επιλέξτε αυτό το κελί, δηλαδή C2 κελί

Σε αυτές τις περιπτώσεις, η λειτουργία OFFSET είναι πολύ χρήσιμη. Ειδικά στο VBA OFFSET Η λειτουργία είναι απλώς φαινομενική.

Το OFFSET χρησιμοποιείται με αντικείμενο Range στο Excel VBA

Στο VBA, δεν μπορούμε να εισαγάγουμε απευθείας τη λέξη OFFSET. Πρέπει πρώτα να χρησιμοποιήσουμε το αντικείμενο VBA RANGE, και από αυτό το αντικείμενο εύρους, μπορούμε να χρησιμοποιήσουμε την ιδιότητα OFFSET.

Στο excel, το εύρος δεν είναι παρά ένα κελί ή ένα εύρος του κελιού. Δεδομένου ότι το OFFSET αναφέρεται σε κελιά, πρέπει πρώτα να χρησιμοποιήσουμε το αντικείμενο RANGE και μετά μπορούμε να χρησιμοποιήσουμε τη μέθοδο OFFSET.

Σύνταξη του OFFSET στο VBA Excel

  • Μετατόπιση γραμμής: Πόσες σειρές θέλετε να αντισταθμίσετε από το επιλεγμένο κελί. Εδώ το επιλεγμένο κελί είναι A1, δηλαδή, Range ("A1").
  • Μετατόπιση στήλης: Πόσες στήλες θέλετε να αντισταθμίσετε από το επιλεγμένο κελί. Εδώ το επιλεγμένο κελί είναι A, 1, δηλαδή, Range ("A1").

Παραδείγματα

Παράδειγμα # 1

Εξετάστε τα παρακάτω δεδομένα, για παράδειγμα, επίδειξη.

Τώρα θέλω να επιλέξω το κελί A6 από το κελί A1. Ξεκινήστε τη μακροεντολή και το κελί αναφοράς χρησιμοποιώντας το αντικείμενο Range.

Κώδικας:

Sub Offset_Example1 () Range ("A1"). Offset (End Sub

Τώρα θέλω να επιλέξω το κελί A6, δηλαδή θέλω να μειώσω 5 κελιά. Εισάγετε λοιπόν το 5 ως παράμετρο για το Row Offset.

Κώδικας:

Sub Offset_Example1 () Range ("A1"). Offset (5 End Sub

Εφόσον επιλέγω στην ίδια στήλη, αφήνω το τμήμα της στήλης. Κλείστε το βραχίονα και βάλτε μια τελεία (.) Και πληκτρολογήστε τη μέθοδο "Επιλογή".

Κώδικας:

Sub Offset_Example1 () Range ("A1"). Offset (5). Επιλέξτε End Sub

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

Παραγωγή:

Παράδειγμα # 2

Τώρα πάρτε τα ίδια δεδομένα, αλλά εδώ θα δείτε πώς να χρησιμοποιήσετε το όρισμα μετατόπισης στηλών επίσης. Τώρα θέλω να επιλέξω το κελί C5.

Εφόσον θέλω πρώτα να επιλέξω το κελί C5, θέλω να μετακινήσω 4 κελιά και να πάρω τις σωστές 2 στήλες για να φθάσω στο κελί C5. Ο παρακάτω κώδικας θα έκανε τη δουλειά για μένα.

Κώδικας:

Sub Offset_Example2 () Range ("A1"). Offset (4, 2). Επιλέξτε End Sub

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

Παραγωγή:

Παράδειγμα # 3

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

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

Από το κελί A9, πρέπει να ανεβούμε 8 σειρές, δηλαδή -8.

Κώδικας:

Sub Offset_Example1 () Range ("A9"). Offset (-8). Επιλέξτε End Sub

Εάν εκτελέσετε αυτόν τον κωδικό χρησιμοποιώντας το πλήκτρο F5 ή μπορείτε να εκτελέσετε χειροκίνητα αυτόν τον κώδικα τότε, θα επιλέξει το κελί A1 από το κελί A9.

Παραγωγή:

Παράδειγμα # 4

Ας υποθέσουμε ότι βρίσκεστε στο κελί C8. Από αυτό το κελί, θέλετε να επιλέξετε το κελί A10.

Από το ενεργό κελί, l, δηλαδή, κελί C8, πρέπει πρώτα να μετακινηθούμε προς τα κάτω σε 2 σειρές και πρέπει να μετακινηθούμε προς τα αριστερά με 2 στήλες για να επιλέξετε το κελί A10.

Σε περίπτωση μετακίνησης αριστερά για να επιλέξετε τη στήλη, πρέπει να καθορίσουμε ότι ο αριθμός είναι αρνητικός. Εδώ λοιπόν πρέπει να επιστρέψουμε από -2 στήλες.

Κώδικας:

Sub Offset_Example2 () Range ("C8"). Offset (2, -2). Επιλέξτε End Sub

Τώρα εκτελέστε αυτόν τον κωδικό χρησιμοποιώντας το πλήκτρο F5 ή εκτελέστε χειροκίνητα, θα επιλέξει το κελί A10 όπως φαίνεται παρακάτω:

Παραγωγή:

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

  • Σε περίπτωση αύξησης των γραμμών, πρέπει να καθορίσουμε τον αριθμό σε αρνητικά.
  • Σε περίπτωση που μετακινηθείτε αριστερά για να επιλέξετε τη στήλη, ο αριθμός πρέπει να είναι αρνητικός.
  • Το κελί A1 είναι η πρώτη σειρά και η πρώτη στήλη.
  • Ενεργό κελί σημαίνει επί του παρόντος επιλεγμένα κελιά.
  • Εάν θέλετε να επιλέξετε το κελί χρησιμοποιώντας το OFFSET, πρέπει να αναφέρετε ".Επιλέξτε".
  • Εάν θέλετε να αντιγράψετε το κελί χρησιμοποιώντας το OFFSET, πρέπει να αναφέρετε το ".Copy."

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