Υπορουτίνα Excel VBA: Τρόπος κλήσης Sub σε VBA με παράδειγμα

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

Anonim

Τι είναι η Υπορουτίνα στο VBA;

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

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

Σε αυτό το σεμινάριο VBA, θα μάθετε-

  • Γιατί να χρησιμοποιήσετε υπορουτίνες
  • Κανόνες ονομασίας υπορουτίνων και συναρτήσεων
  • Σύνταξη υπορουτίνας VBA
  • Πώς να καλέσετε Sub στο VBA

Γιατί να χρησιμοποιήσετε υπορουτίνες

  • Διαίρεση κώδικα σε μικρό διαχειρίσιμο κώδικα : Ένα μέσο πρόγραμμα υπολογιστή έχει χιλιάδες και χιλιάδες γραμμές πηγαίου κώδικα. Αυτό εισάγει την πολυπλοκότητα. Οι υπορουτίνες βοηθούν στην επίλυση αυτού του προβλήματος, χωρίζοντας το πρόγραμμα σε μικρά διαχειρίσιμα κομμάτια κώδικα.
  • Επαναχρησιμοποίηση κώδικα . Ας υποθέσουμε ότι έχετε ένα πρόγραμμα που πρέπει να έχει πρόσβαση στη βάση δεδομένων, σχεδόν όλα τα παράθυρα του προγράμματος θα πρέπει να αλληλεπιδράσουν με τη βάση δεδομένων. Αντί να γράψετε ξεχωριστό κώδικα για αυτά τα παράθυρα, μπορείτε να δημιουργήσετε μια συνάρτηση που χειρίζεται όλες τις αλληλεπιδράσεις βάσης δεδομένων. Στη συνέχεια, μπορείτε να το καλέσετε από όποιο παράθυρο θέλετε.
  • Οι υπορουτίνες και οι λειτουργίες αυτο-τεκμηριώνουν . Ας υποθέσουμε ότι έχετε μια συνάρτηση calculLoanInterest και μια άλλη που λέει connectToDatabase. Απλώς κοιτάζοντας το όνομα της υπορουτίνας / λειτουργίας, ο προγραμματιστής θα είναι σε θέση να πει τι κάνει το πρόγραμμα.

Κανόνες ονομασίας υπορουτίνων και συναρτήσεων

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

  • Ένα όνομα συνάρτησης υπορουτίνας ή κλήσης VBA δεν μπορεί να περιέχει κενό
  • Ένα υποκατάστημα κλήσης Excel VBA ή όνομα συνάρτησης πρέπει να ξεκινά με ένα γράμμα ή μια υπογράμμιση. Δεν μπορεί να ξεκινήσει με έναν αριθμό ή έναν ειδικό χαρακτήρα
  • Ένα όνομα υπορουτίνας ή συνάρτησης δεν μπορεί να είναι λέξη-κλειδί. Μια λέξη-κλειδί είναι μια λέξη που έχει ιδιαίτερη σημασία στο VBA. Λέξεις όπως ιδιωτικές, δευτερεύουσες, λειτουργίες και τέλος, κ.λπ. είναι όλα παραδείγματα λέξεων-κλειδιών. Ο μεταγλωττιστής τα χρησιμοποιεί για συγκεκριμένες εργασίες.

Σύνταξη υπορουτίνας VBA

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

ΕΔΩ στη σύνταξη,

Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String)'do somethingEnd Sub

Σύνταξη εξήγησης

Κώδικας

Δράση

  • "Private Sub mySubRoutine (…)"
  • Εδώ η λέξη-κλειδί "Sub" χρησιμοποιείται για να δηλώσει μια υπορουτίνα με το όνομα "mySubRoutine" και να ξεκινήσει το σώμα της υπορουτίνας.
  • Η λέξη-κλειδί Private χρησιμοποιείται για τον καθορισμό του πεδίου εφαρμογής της υπορουτίνας
  • "ByVal arg1 As String, ByVal arg2 As String":
  • Δηλώνει δύο παραμέτρους του ονόματος τύπου συμβολοσειράς όνομα arg1 και arg2
  • "End Sub"
  • Το "End Sub" χρησιμοποιείται για τον τερματισμό του σώματος της υπορουτίνας

Η ακόλουθη υπορουτίνα δέχεται το όνομα και το επώνυμο και τα εμφανίζει σε ένα πλαίσιο μηνυμάτων.

Τώρα πρόκειται να προγραμματίσουμε και να εκτελέσουμε αυτήν την Υπο Διαδικασία. Ας το δούμε.

Πώς να καλέσετε Sub στο VBA

Ακολουθεί μια διαδικασία βήμα προς βήμα σχετικά με τον τρόπο κλήσης Sub στο VBA:

  1. Σχεδιάστε τη διεπαφή χρήστη και ορίστε τις ιδιότητες για τα στοιχεία ελέγχου χρήστη.
  2. Προσθέστε την υπορουτίνα
  3. Γράψτε τον κωδικό συμβάντος κλικ για το κουμπί εντολής που καλεί την υπορουτίνα
  4. Δοκιμάστε την εφαρμογή

Βήμα 1) Διεπαφή χρήστη

Σχεδιάστε τη διεπαφή χρήστη όπως φαίνεται στην παρακάτω εικόνα

Ορίστε τις ακόλουθες ιδιότητες. Οι ιδιότητες που θέτουμε

Δ / Ν Ελεγχος Ιδιοκτησία αξία
1 Κουμπί Command1 Ονομα btnDisplayFullName
2 Λεζάντα Υπορουτίνα πλήρους ονόματος

Η διεπαφή σας πρέπει τώρα να έχει ως εξής

Βήμα 2) Προσθέστε υπορουτίνα

  1. Πατήστε Alt + F11 για να ανοίξετε το παράθυρο κώδικα
  2. Προσθέστε την ακόλουθη υπορουτίνα
Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String)MsgBox firstName & " " & lastNameEnd Sub

ΕΔΩ στον κωδικό,

Κώδικας

Ενέργειες

  • "Private Sub displayFullName (…)"
  • Δηλώνει ένα ιδιωτικό υπορουτίνα displayFullName που δέχεται δύο παραμέτρους συμβολοσειράς.
  • "ByVal firstName As String, ByVal lastName As String"
  • Δηλώνει δύο μεταβλητές παραμέτρων firstName και lastName
  • MsgBox firstName & "" & lastName "
  • Καλεί την ενσωματωμένη λειτουργία MsgBox να εμφανίσει ένα πλαίσιο μηνυμάτων. Στη συνέχεια, μεταβιβάζει τις μεταβλητές «firstName» και «lastName» ως παραμέτρους.
  • Το ampersand "&" χρησιμοποιείται για να συνδυάσει τις δύο μεταβλητές και να προσθέσει ένα κενό διάστημα μεταξύ τους.

Βήμα 3) Κλήση της υπορουτίνας από το συμβάν κάντε κλικ στο κουμπί εντολών.

  • Κάντε δεξί κλικ στο κουμπί εντολών όπως φαίνεται στην παρακάτω εικόνα. Επιλέξτε Προβολή κώδικα.
  • Θα ανοίξει ο επεξεργαστής κώδικα

Προσθέστε τον ακόλουθο κώδικα στο πρόγραμμα επεξεργασίας κώδικα για το συμβάν κλικ του κουμπιού εντολής btnDisplayFullName.

Private Sub btnDisplayFullName_Click()displayFullName "John", "Doe"End Sub

Το παράθυρο του κωδικού σας θα πρέπει τώρα να έχει ως εξής

Αποθηκεύστε τις αλλαγές και κλείστε το παράθυρο κώδικα.

Βήμα 4) Δοκιμή του κώδικα

Στη γραμμή εργαλείων προγραμματιστή βάλτε τη λειτουργία σχεδίασης «απενεργοποιημένη». Οπως φαίνεται παρακάτω.

Βήμα 5) Κάντε κλικ στο κουμπί εντολής «Υπορουτίνα FullName».

Θα λάβετε τα ακόλουθα αποτελέσματα

Κάντε λήψη του παραπάνω κώδικα του Excel

Περίληψη:

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