Πίνακας περιεχομένων
Όσον αφορά την αναζήτηση ή την προβολή ορισμένων συγκεκριμένων τιμών ή στοιχείων, το MS Excel παρέχει διάφορες λειτουργίες. VLOOKUP Μας βοηθάει να αναζητήσουμε τα επιθυμητά δεδομένα από οποιοδήποτε σύνολο δεδομένων. Μας επιτρέπει να αναφέρουμε αν θα αναζητήσουμε μια ακριβή αντιστοιχία ή μια κατά προσέγγιση αντιστοιχία. Μαζί με τη χρήση αυτής της συνάρτησης στον τύπο του Excel, μπορούμε να τη χρησιμοποιήσουμε και σε κώδικα VBA. Σε αυτό το άρθρο, θα δούμε πώς μπορούμε να χρησιμοποιήσουμε αυτή τη συνάρτηση. Λειτουργία VLOOKUP στην VBA.
Κατεβάστε το βιβλίο ασκήσεων
VLOOKUP σε VBA.xlsm4 τρόποι χρήσης του VLOOKUP στην VBA
1. Χειροκίνητη αναζήτηση δεδομένων με χρήση του VLOOKUP στη VBA
Ας έχουμε ένα σύνολο δεδομένων για πληροφορίες υπαλλήλου με το αναγνωριστικό τους, το όνομα, το τμήμα, την ημερομηνία ένταξης και το μισθό τους. Τώρα ο στόχος μας είναι να βρούμε τις πληροφορίες του υπαλλήλου χρησιμοποιώντας το αναγνωριστικό του χειροκίνητα. Για αυτή την ενότητα, θα βρούμε μόνο το μισθό του υπαλλήλου χρησιμοποιώντας το αναγνωριστικό του.
Βήμα 1: Επιλέξτε Visual Basic στο Προγραμματιστής καρτέλα (Συντόμευση Alt + F11 )
Βήμα 2: Τότε θα εμφανιστεί ένα παράθυρο. Επιλέξτε Ενότητα επιλογή στο πλαίσιο Εισαγωγή κουμπί
Βήμα 3: Τώρα γράψτε τον ακόλουθο κώδικα στην κονσόλα VBA και πατήστε το πλήκτρο Εκτέλεση κουμπί (Συντόμευση F5 )
Κωδ:
Sub vlookup_function_1() Dim Employee_id As Long Dim salary As Long Employee_id = 1144 Set myerange = Range("B4:F11") salary = Application.WorksheetFunction.VLookup(Employee_id, myerange, 5, False) MsgBox "Employee ID:" & Employee_id & " Salary " & "$" & salary End Sub
Βήμα 4: Τώρα θα εμφανιστεί ένα αναδυόμενο μήνυμα και θα εμφανίσει τις πληροφορίες
Διαβάστε περισσότερα: VLOOKUP για αναζήτηση κειμένου στο Excel (4 εύκολοι τρόποι)
2. Αναζήτηση δεδομένων με εισαγωγή χρησιμοποιώντας το VLOOKUP στη VBA
Τώρα ας δούμε πώς μπορούμε να αναζητήσουμε ή να εξάγουμε δεδομένα από πίνακες ή περιοχές με εισαγωγή. Όπως στην εικόνα, θα βρούμε το όνομα του εισαγόμενου id από τον πίνακα πληροφοριών υπαλλήλου.
Βήμα 1: Ανοίξτε πρώτα την κονσόλα VBA ακολουθώντας τα ίδια βήματα από το Βήμα 1 στο Βήμα 2.
Βήμα 2: Τώρα εισαγάγετε τον ακόλουθο κώδικα στο παράθυρο VBA
Κωδ:
Sub vlookup_function_2() Set myerange = Range("B4:F11") Set ID = Range("D13") Set Name = Range("D14") Name.Value = Application.WorksheetFunction.VLookup(ID, myerange, 2, False) End Sub
Βήμα 3: Τώρα Εισάγετε οποιοδήποτε ID στο κελί D13 και εκτελέστε τον κώδικα
Βήμα 4: Το Όνομα που έχει αποθηκευτεί σε σχέση με το αναγνωριστικό θα εμφανιστεί
Διαβάστε περισσότερα: 10 βέλτιστες πρακτικές με το VLOOKUP στο Excel
Παρόμοιες αναγνώσεις
- Το VLOOKUP δεν λειτουργεί (8 λόγοι και λύσεις)
- Συνάρτηση INDEX MATCH vs VLOOKUP (9 παραδείγματα)
- Χρήση VLOOKUP με πολλαπλά κριτήρια στο Excel (6 μέθοδοι + εναλλακτικές λύσεις)
- Excel VLOOKUP για να βρείτε την τελευταία τιμή στη στήλη (με εναλλακτικές λύσεις)
- Excel VLOOKUP για την επιστροφή πολλαπλών τιμών κάθετα
3. Εύρεση πληροφοριών με πλαίσιο εισαγωγής χρησιμοποιώντας το VLOOKUP στη VBA
Ας δούμε πώς μπορούμε να αναζητήσουμε δεδομένα χρησιμοποιώντας το πλαίσιο εισαγωγής της VBA. Για την αναζήτηση, πρέπει να χρησιμοποιήσουμε την εντολή VLOOKUP στον κώδικα VBA. Και πάλι, το σύνολο δεδομένων θα είναι το ίδιο, αλλά η προσέγγιση αναζήτησης θα είναι διαφορετική. Εδώ ο στόχος μας είναι να βρούμε τον μισθό του υπαλλήλου εισάγοντας το ID και το Τμήμα.
Βήμα 1: Ανοίξτε πρώτα το παράθυρο της VBA ακολουθώντας το ίδιο βήμα από το βήμα 1 στο βήμα 2.
Βήμα 2: Τώρα εισαγάγετε τον ακόλουθο κώδικα στην κονσόλα VBA και Εκτέλεση it
Κωδ:
Sub vlookup_function_3() For i = 4 To Cells(Rows.Count, "B").End(xlUp).Row Cells(i, "A").Value = Cells(i, "B").Value & "_" & Cells(i, "D").Value Next i End Sub
Βήμα 3: Αυτό θα εκτυπώσει μια συνδυασμένη συμβολοσειρά με ID και Τμήμα στην πρώτη στήλη
Βήμα 4: Τώρα μεταβείτε ξανά στην κονσόλα VBA και εισάγετε τον πλήρη κώδικα και εκτελέστε τον ξανά
Κωδ:
Sub vlookup_function_3() For i = 4 To Cells(Rows.Count, "B").End(xlUp).Row Cells(i, "A").Value = Cells(i, "B").Value & "_" & Cells(i, "D").Value Next i Dim ID As Long Dim department As String Dim lookup_val As String Dim salary As Long ID = InputBox("Enter the ID of the employee") department = InputBox("Enter the department of the employee") lookup_val = ID & "_" & department OnError GoTo Message check: salary = Application.WorksheetFunction.VLookup(lookup_val, Range("A:F"), 6, False) MsgBox ("The salary of the employee is $" & salary) Message: If Err.Number = 1004 Then MsgBox ("Employee data not present") End If End Sub
Επεξήγηση κωδικού
- Πρώτον, Cells(i, "A").Value = Cells(i, "B").Value & "_" & Cells(i, "D").Value χρησιμοποιώντας αυτόν τον κώδικα αποθηκεύουμε τις τιμές ID και Department σε συνδυασμό στη στήλη A.
- lookup_val = ID & "_" & τμήμα αυτό ορίζει ότι η τιμή αναζήτησης θα είναι το ID και το τμήμα.
- salary = Application.WorksheetFunction.VLookup(lookup_val, Range("A: F"), 6, False) εδώ αποθηκεύουμε το μισθό του εργαζόμενου που ταιριάζει σε μια μεταβλητή με όνομα μισθός
- Εάν αριθμός σφάλματος = 1004 τότε Ελέγχουμε αν ο αριθμός σφάλματος είναι 1004 ή όχι. Στο Excel VBA ο κωδικός 1004 σημαίνει ότι η αναζητούμενη τιμή δεν βρέθηκε, διαγράφηκε ή αφαιρέθηκε.
Βήμα 5: Τώρα θα εμφανιστεί ένα αναδυόμενο παράθυρο όπως αυτή η εικόνα. ID και Τμήμα διαδοχικά
Βήμα 6: Αφού πατήσετε το Εντάξει θα εμφανιστεί η τελική έξοδος
Βήμα 7: Εάν εισάγετε λάθος ID ή Τμήμα, θα εμφανιστεί το παρακάτω μήνυμα
Διαβάστε περισσότερα: Πώς να VLOOKUP με πολλαπλές συνθήκες στο Excel (2 μέθοδοι)
4. Εύρεση πληροφοριών με κουμπί χρησιμοποιώντας το VLOOKUP στη VBA
Τώρα θα δούμε πώς μπορούμε να βρούμε πληροφορίες με τη βοήθεια ενός κουμπιού αντί να εκτελούμε τον κώδικα χειροκίνητα. Και πάλι, το σύνολο δεδομένων θα είναι το ίδιο με το παραπάνω.
Βήμα 1: Πρώτα επιλέξτε το Εισαγωγή επιλογή στο πλαίσιο του Προγραμματιστής καρτέλα
Βήμα 2: Στη συνέχεια, επιλέξτε το Κουμπί επιλογή από το Εισαγωγή
Βήμα 3: Τοποθετήστε το κουμπί σύμφωνα με τις απαιτήσεις σας και δώστε το όνομα του κουμπιού.
Βήμα 4: Τώρα κάντε δεξί κλικ στο κουμπί και επιλέξτε Ανάθεση μακροεντολών
Βήμα 5: Τώρα δημιουργήστε μια νέα μακροεντολή και ονομάστε την vlookup_function_4
Βήμα 6: Γράψτε τον παρακάτω κώδικα στην κονσόλα VBA και Εκτέλεση ο κώδικας
Κωδ:
Sub vlookup_function_4() Dim rng As Range, FinalResult As Variant, Table_Range As Range, LookupValue As Range Set rng = Sheets("Sheet4").Range("D15") Set Table_Range = Sheets("Sheet4").Range("B4:F11") Set LookupValue = Sheets("Sheet4").Range("D14") FinalResult = Application.WorksheetFunction.VLookup(LookupValue, Table_Range, 5, False) rng = FinalResult End Sub
Βήμα 6: Τώρα πληκτρολογήστε οποιοδήποτε αναγνωριστικό και πατήστε το κουμπί
Διαβάστε περισσότερα: Χρήση του VBA VLOOKUP για την εύρεση τιμών από άλλο φύλλο εργασίας στο Excel
Πράγματα που πρέπει να θυμάστε
Συνήθη σφάλματα | Όταν δείχνουν |
---|---|
1004 σφάλμα | Όταν ο κώδικας vlookup της VBA δεν μπορεί να βρει την τιμή lookup_value, θα δώσει σφάλμα 1004. |
Η συνάρτηση VLOOKUP δεν βρέθηκε στη VBA | Η συνάρτηση Vlookup μπορεί να κληθεί στο Excel VBA χρησιμοποιώντας τη συνάρτηση WorksheetFunction. |
Χειρισμός σφαλμάτων | Το σφάλμα στη συνάρτηση vlookup μπορεί να ελεγχθεί με τη χρήση ενός πηγαίνετε στο δήλωση εάν επιστρέφει σφάλμα. |
Συμπέρασμα
Αυτοί είναι μερικοί τρόποι χρήσης του VLOOKUP στη συνάρτηση VBA στο Excel. Έχω δείξει όλες τις μεθόδους με τα αντίστοιχα παραδείγματά τους, αλλά μπορεί να υπάρχουν πολλές άλλες επαναλήψεις. Έχω επίσης συζητήσει τις βασικές αρχές των χρησιμοποιούμενων συναρτήσεων. Εάν έχετε κάποια άλλη μέθοδο για να επιτύχετε αυτό, τότε μη διστάσετε να τη μοιραστείτε μαζί μας.