Λειτουργία VBA MID | Πώς να χρησιμοποιήσετε τη λειτουργία Excel VBA MID;

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

Η συνάρτηση VBA MID εξάγει τις τιμές από τη μέση της παρεχόμενης πρότασης ή λέξης. Η συνάρτηση MID κατηγοριοποιείται στη συνάρτηση συμβολοσειράς και κειμένου και είναι μια συνάρτηση φύλλου εργασίας που σημαίνει να χρησιμοποιήσουμε αυτήν τη συνάρτηση στο VBA, πρέπει να χρησιμοποιήσουμε τη μέθοδο application.worksheet.

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

Σύνταξη

Όπως και η λειτουργία MID excel, στο VBA έχει επίσης ένα παρόμοιο σύνολο τιμών σύνταξης. Παρακάτω είναι η σύνταξη.

  • String to Search: Αυτό δεν είναι τίποτα άλλο από ποια είναι η πρόταση του string, δηλαδή από ποια συμβολοσειρά ή λέξη θέλετε να εξαγάγετε τις τιμές.
  • Αρχική θέση: Από ποια θέση της πρότασης θέλετε να εξαγάγετε. Αυτή πρέπει να είναι μια αριθμητική τιμή.
  • Αριθμός χαρακτήρων προς εξαγωγή: Από την αρχική θέση πόσους χαρακτήρες θέλετε να εξαγάγετε; Αυτό θα πρέπει επίσης να είναι μια αριθμητική τιμή.

Πώς να χρησιμοποιήσετε τη λειτουργία VBA MID;

Μπορείτε να κατεβάσετε αυτό το Πρότυπο λειτουργίας VBA MID εδώ - Πρότυπο λειτουργίας VBA MID

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

Ας υποθέσουμε ότι έχετε τη λέξη "Γεια σας Καλημέρα" και θέλετε να εξαγάγετε το "Good" από αυτήν την πρόταση. Ακολουθήστε τα παρακάτω βήματα για να εξαγάγετε την τιμή.

Βήμα 1: Δημιουργήστε πρώτα ένα όνομα μακροεντολής.

Κώδικας:

 Υπο MID_VBA_Example1 () End Sub 

Βήμα 2: Δηλώστε μια μεταβλητή ως "STRING".

Κώδικας:

 Sub MID_VBA_Example1 () Dim MiddleValue ως συμβολοσειρά End Sub 

Βήμα 3: Τώρα ορίστε μια τιμή σε αυτήν τη μεταβλητή μέσω της συνάρτησης MID.

Κώδικας:

 Υπο MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid (End Sub 

Βήμα 4: Το πρώτο όρισμα είναι το String, δηλαδή από ποια τιμή θέλουμε να εξαγάγουμε. Η αξία μας λοιπόν είναι «Γεια σας Καλημέρα».

Κώδικας:

 Υπο MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", End Sub 

Βήμα 5: Στη συνέχεια είναι ποια είναι η αρχική θέση του χαρακτήρα που θέλετε να εξαγάγετε. Σε αυτήν την περίπτωση, η Καλημέρα ξεκινά από έναν 7ο χαρακτήρα.

Σημείωση: Το διάστημα είναι επίσης ένας χαρακτήρας.

Κώδικας:

 Υπο MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", 7 End Sub 

Βήμα 6: Το μήκος δεν είναι παρά πόσους χαρακτήρες θέλετε να εξαγάγετε. Πρέπει να εξαγάγουμε 4 χαρακτήρες εδώ, επειδή το μήκος της λέξης "Καλό" είναι 4 χαρακτήρες.

Κώδικας:

 Υπο MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", 7, 4) End Sub 

Βήμα 7: Ολοκληρώσαμε τον τύπο. Ας δείξουμε το αποτέλεσμα της μεταβλητής στο πλαίσιο μηνύματος.

Κώδικας:

 Υπο MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", 7, 4) MsgBox MiddleValue End Sub 

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

Παραγωγή:

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

Ας υποθέσουμε ότι έχετε ένα όνομα και επώνυμο μαζί και η λέξη είναι "Ramesh, Tendulkar". Μεταξύ Όνομα & Επώνυμο, ο χαρακτήρας διαχωρισμού είναι ένα κόμμα (,). Τώρα πρέπει να εξαγάγουμε μόνο το όνομα.

Βήμα 1: Δημιουργήστε μια μακροεντολή και ορίστε μια μεταβλητή.

Κώδικας:

 Sub MID_VBA_Example2 () Dim FirstName ως συμβολοσειρά End Sub 

Βήμα 2: Τώρα ορίστε μια τιμή σε αυτήν τη μεταβλητή μέσω της συνάρτησης MID.

Κώδικας:

 Υπο MID_VBA_Example2 () Dim FirstName ως συμβολοσειρά FirstName = Mid (End Sub 

Βήμα 3: Η συμβολοσειρά μας είναι "Ramesh.Tendulkar", οπότε εισαγάγετε αυτήν τη λέξη.

Κώδικας:

 Υπο MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", End Sub 

Βήμα 4: Δεδομένου ότι εξάγουμε το πρώτο όνομα, η αρχική θέση είναι 1.

Κώδικας:

 Υπο MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, End Sub 

Βήμα 5: Μήκος του χαρακτήρα που μπορείτε να εισαγάγετε απευθείας ως 6, αλλά αυτός δεν είναι ο καλύτερος τρόπος. Για να προσδιορίσετε το μήκος ας εφαρμόσουμε έναν ακόμη τύπο που ονομάζεται Instr.

Κώδικας:

 Υπο MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (End Sub 

Βήμα 6: Για αυτήν την αρχική θέση είναι 1.

Κώδικας:

 Υπο MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (1, End Sub 

Βήμα 7: Το String 1 είναι το όνομά μας, δηλαδή "Ramesh, Tendulkar".

Κώδικας:

 Sub MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (1, "Ramesh, Tendulkar", End Sub 

Βήμα 8: Συμβολοσειρά 2 ποιος είναι ο διαχωριστής του ονόματος και του επώνυμου, δηλαδή κόμμα (,).

Κώδικας:

 Υπο MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (1, "Ramesh, Tendulkar", ",") End Sub 

Σημείωση: Η συνάρτηση Instr θα επιστρέψει πόσους χαρακτήρες υπάρχουν στη λέξη "Ramesh, Tendulkar" από τη θέση συμβολοσειράς 1 στις θέσεις συμβολοσειράς 2, δηλαδή έως το κόμμα (,). Έτσι, ο Instr θα επιστρέψει 7 ως αποτέλεσμα, συμπεριλαμβανομένου του κόμμα (,).

Βήμα 9: Δεδομένου ότι η συνάρτηση Instr επιστρέφει τον αριθμό των χαρακτήρων, συμπεριλαμβανομένων των κόμμα (,), πρέπει να μείνουμε 1 χαρακτήρα εδώ. Εισάγετε λοιπόν -1 μετά το κλείσιμο της συνάρτησης Instr.

Κώδικας:

 Sub MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (1, "Ramesh, Tendulkar", ",") - 1) End Sub 

Βήμα 10: Τώρα δείξτε την τιμή της μεταβλητής στο πλαίσιο μηνύματος.

Κώδικας:

 Sub MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (1, "Ramesh, Tendulkar", ",") - 1) MsgBox FirstName End Sub 

Βήμα 11: Εκτελέστε αυτόν τον κωδικό χρησιμοποιώντας το πλήκτρο F5 ή μπορείτε να εκτελέσετε αυτόν τον κωδικό χειροκίνητα, θα λάβουμε το όνομα στο πλαίσιο μηνύματος.

Παραγωγή:

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

Τώρα θα σας δώσω μια εργασία για επίλυση. Έχω μια λίστα με Όνομα & Επώνυμο.

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

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

Κώδικας:

 Sub MID_VBA_Example3 () Dim i As Long For i = 2 to 15 Cells (i, 2). Value = Mid (Cells (i, 1). Value, 1, InStr (1, Cells (i, 1). Value, " , ") - 1) Επόμενο i End Sub 

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

Θα πρέπει να δώσει το αποτέλεσμα όπως το παρακάτω.

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

  • Το όρισμα μήκους στη συνάρτηση MID είναι προαιρετικό. Εάν το αγνοήσετε αυτό θα χρειαστεί 1 ως η προεπιλεγμένη τιμή.
  • Για να προσδιορίσετε το μήκος ή την αρχική θέση χρησιμοποιήστε τη συνάρτηση Instr μαζί με τη λειτουργία MID.

$config[zx-auto] not found$config[zx-overlay] not found