Λειτουργία εύρεσης VBA - Πώς να χρησιμοποιήσετε τη λειτουργία εύρεσης VBA; (Παραδείγματα)

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

Εύρεση VBA Excel

Όταν χρησιμοποιούμε το Find σε ένα κανονικό φύλλο εργασίας, πατάμε τη συντόμευση πληκτρολογίου CTRL + F και πληκτρολογούμε τα δεδομένα που πρέπει να βρούμε και αν δεν επιθυμούμε την τιμή πηγαίνουμε στον επόμενο αγώνα, εάν υπάρχουν πολλές τέτοιες αντιστοιχίες, είναι μια κουραστική εργασία, αλλά όταν χρησιμοποιούμε το FIND στο VBA κάνει τα καθήκοντα για εμάς και μας δίνει την ακριβή αντιστοίχιση και παίρνει τρία επιχειρήματα, το ένα είναι τι να βρούμε, πού να βρούμε και πού να κοιτάξουμε.

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

Όταν κάνουμε κλικ σε αυτό, έχουμε δύο επιλογές:

Το ένα είναι εύκολο να βρεθεί,

Μπορούμε να δούμε ότι έχει επίσης έναν τρόπο επιλογών που ανοίγει μια άλλη δυνατότητα.

Κάνει τον αλγόριθμο εύρεσης με τέσσερις περιορισμούς, Find What, Within, Search και look in.

Η δεύτερη επιλογή στο excel είναι να βρείτε και να αντικαταστήσετε το οποίο χρησιμοποιείται όταν βρούμε μια συμβολοσειρά αλλά τι να την αντικαταστήσουμε με οποιαδήποτε άλλη τιμή,

Εύρεση συνάρτησης συναρτήσεων

Μάθαμε παραπάνω τι είναι το Find in basic excel. Στο VBA, γράφουμε κωδικούς χειροκίνητα, αλλά οι δυνατότητες είναι ίδιες με τις κανονικές excel. Πρώτον, ας δούμε τη σύνταξη.

Expression.Find (What, lookin,….)

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

Οι εκφράσεις στις μακροεντολές καθορίζονται σε εύρη, όπως εύρος 1 ή εύρος 2. Τι είναι μια λέξη-κλειδί για αυτό που θέλουμε να αναζητήσουμε μια συγκεκριμένη τιμή; Το Lookin είναι μια λέξη-κλειδί για αυτό που προσπαθούμε να αναζητήσουμε, είναι ένα σχόλιο ή ένας τύπος ή μια συμβολοσειρά. Ομοίως, υπάρχουν και άλλοι περιορισμοί στη λειτουργία Εύρεση, οι οποίοι είναι προαιρετικοί. Το μόνο υποχρεωτικό πεδίο που απαιτείται είναι η τιμή που προσπαθούμε να αναζητήσουμε.

Βασικά, το VBA βρίσκει το Excel να έχει ένα απαιτούμενο όρισμα, το οποίο είναι τι αξία θέλουμε να αναζητήσουμε. Οι υπόλοιποι περιορισμοί είναι προαιρετικοί και υπάρχουν πολλοί περιορισμοί στη λειτουργία εύρεσης. Η λειτουργία εύρεσης είναι παρόμοια με τη λειτουργία εύρεσης στο Excel.

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

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

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

Ας υποθέσουμε ότι τα δεδομένα μας έχουν τις ακόλουθες τιμές

Θα προσπαθήσουμε να βρούμε το "Aran" στα ίδια δεδομένα.

  • Για να γράψετε έναν κώδικα VBA, είναι απαραίτητο να έχετε ενεργοποιήσει την καρτέλα προγραμματιστή στο excel για να μπορέσετε να γράψετε Κωδικούς VBA.
  • Αρχίζουμε να γράφουμε τον κωδικό μας γράφοντας τον ακόλουθο κώδικα όπως φαίνεται παρακάτω,
Υπο δείγμα ()
DimFindS As String
Dim
Rng As Range FindS = InputBox ("Εισαγάγετε την τιμή που θέλετε να αναζητήσετε")
Με φύλλα ("Sheet1"). Range ("A: A")
  • Το δείγμα είναι το όνομα της συνάρτησης που δίνεται στο δευτερεύον.
  • Το Find είναι η συμβολοσειρά που θέλουμε να αναζητήσει ο χρήστης που θέλουμε να εισαγάγει.
  • Το Rng είναι η μεταβλητή που χρησιμοποιήσαμε για το εύρος.
  • Τώρα ζητάμε από τον χρήστη να εισαγάγει την τιμή που μοιάζει με το παρακάτω στιγμιότυπο οθόνης,
  • Τώρα θα καθορίσουμε τη λειτουργία εύρεσης στη μονάδα.
  • Η συνάρτηση βρίσκει την τιμή που έχει εισαγάγει ο χρήστης στο δεδομένο εύρος.
  • Τώρα κλείνουμε τη συνάρτηση με τα ακόλουθα ορίσματα.
  • Τώρα, αν εκτελέσουμε πρώτα τον κωδικό μας, ζητά μια ερώτηση από τον χρήστη για μια τιμή.
  • Μόλις ολοκληρωθεί ο κωδικός, επιστρέφει το κελί στο σημείο όπου βρέθηκαν τα δεδομένα.

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

Στο παραπάνω παράδειγμα, υπήρχαν τέσσερα μοναδικά ονόματα, αλλά τι γίνεται αν υπήρχαν περισσότερα από ένα ονόματα στα δεδομένα, όπως εξετάστε τα παρακάτω δεδομένα,

Μπορούμε να δούμε ότι το όνομα Aran επαναλαμβάνεται δύο φορές στα παραπάνω δεδομένα. Εάν το excel πρέπει να βρει το όνομα Aran, θα το βρει στο κελί A2 και θα σταματήσει, αλλά υπάρχει μια άλλη τιμή παρόμοια με εκείνη του A2 στο κελί A6. Πώς να αποκτήσετε αυτήν την τιμή; Εδώ έρχεται η σύνταξη του Find (What, After) σε βοήθεια.

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

Ας γράψουμε τον κωδικό για τα παραπάνω δεδομένα.

  • Να θυμάστε πάντα να ενεργοποιήσετε την καρτέλα προγραμματιστή από τις επιλογές και στη συνέχεια από την προσαρμογή της κορδέλας στο excel για να μπορείτε να γράφετε τον κώδικα στο VBA.
  • Στο VBA, λαμβάνουμε Microsoft excel αντικείμενα, η οποία είναι μια ενότητα όπου γράφουμε τους κωδικούς.
  • Προηγουμένως εργαζόμασταν στο φύλλο 1. τώρα, εργαζόμαστε στο φύλλο 2, οπότε επιλέξτε το φύλλο 2 για μια άλλη ενότητα και εμφανίζεται μια κενή σελίδα.
  • Τώρα ξεκινήστε να γράφετε τον κωδικό ορίζοντας πρώτα τη συνάρτηση ως SUB Sample2 () και πατήστε enter.
  • Τώρα έχουμε καθορίσει τη λειτουργία μας. θα αρχίσουμε να μπαίνουμε στο κύριο μέρος, το οποίο καθορίζει τις μεταβλητές μας.
  • Ορίστε τι πρέπει να έχει η μεταβλητή Find,
  • Επιλέξτε τα φύλλα στα οποία εργαζόμαστε, που είναι το φύλλο 2 σε αυτό το παράδειγμα,
  • Τώρα θα βρούμε το κείμενο ό, τι ο χρήστης εισάγει μετά το κελί A2, οπότε ορίζουμε τη λειτουργία εύρεσης όπως παρακάτω,
  • Τώρα κλείνουμε τον κωδικό τερματίζοντας με και εάν οι συνθήκες.

Αυτό που κάνει ο παραπάνω κώδικας είναι η αναζήτηση της συμβολοσειράς μετά το κελί Α2 και η επιστροφή του κελιού όπου βρίσκεται.

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

  1. Πρώτα πράγματα πρώτα, πρέπει να ενεργοποιήσουμε την καρτέλα προγραμματιστή για να χρησιμοποιήσουμε το VBA.
  2. Ποια είναι η συγκεκριμένη τιμή που πρέπει να βρούμε;
  3. Εάν η τιμή δεν βρεθεί, το αντικείμενο της συνάρτησης τίθεται σε τίποτα.

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