Πώς να δημιουργήσετε μια μακροεντολή ή ένα σενάριο VBA στο Excel

Το Microsoft Excel(Microsoft Excel) επιτρέπει στους χρήστες να αυτοματοποιούν λειτουργίες και εντολές χρησιμοποιώντας μακροεντολές και δέσμες ενεργειών της Visual Basic for Applications ( VBA ). Το VBA είναι η γλώσσα προγραμματισμού που(VBA is the programming language Excel) χρησιμοποιεί το Excel για τη δημιουργία μακροεντολών. Θα εκτελεί επίσης αυτοματοποιημένες εντολές με βάση συγκεκριμένες συνθήκες.

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

Κάτω από την καρτέλα Προγραμματιστής στην (Developer)Κορδέλα(Ribbon) στο Excel , οι χρήστες μπορούν να καταγράφουν κλικ και πατήματα πλήκτρων του ποντικιού (μακροεντολές). Ωστόσο, ορισμένες λειτουργίες απαιτούν πιο εις βάθος σενάριο από ό,τι μπορούν να παρέχουν οι μακροεντολές. Αυτό είναι όπου το σενάριο VBA γίνεται ένα τεράστιο όφελος. Επιτρέπει στους χρήστες να δημιουργούν πιο σύνθετα σενάρια.

Σε αυτό το άρθρο, θα εξηγήσουμε τα εξής:

  • Ενεργοποίηση σεναρίων και μακροεντολών
  • Πώς να δημιουργήσετε μια μακροεντολή στο Excel
  • Συγκεκριμένο παράδειγμα μακροεντολής
  • Μάθετε περισσότερα για το VBA
  • Δημιουργήστε ένα κουμπί(Button) για να ξεκινήσετε με το VBA
  • Προσθέστε κώδικα(Add Code) για να δώσετε τη λειτουργικότητα του κουμπιού(Button Functionality)
  • Δούλεψε?

Ενεργοποίηση σεναρίων και μακροεντολών(Enabling Scripts & Macros)

Για να μπορέσετε να δημιουργήσετε μακροεντολές ή σενάρια VBA στο (VBA)Excel , πρέπει να ενεργοποιήσετε την καρτέλα Προγραμματιστής(Developer ) στο μενού Κορδέλα . (Ribbon)Η καρτέλα Προγραμματιστής(Developer) δεν είναι ενεργοποιημένη από προεπιλογή. Για να το ενεργοποιήσετε:

  • Ανοίξτε ένα φύλλο εργασίας του Excel.
  • Κάντε κλικ στο Αρχείο(File ) > Επιλογές( Options ) > Προσαρμογή κορδέλας.( Customize Ribbon.)

  • Τοποθετήστε ένα σημάδι στο πλαίσιο δίπλα στο στοιχείο Προγραμματιστής(Developer) .

  • Κάντε κλικ στην καρτέλα Προγραμματιστής(Developer) από το μενού Κορδέλα .(Ribbon)

  • Στη συνέχεια, κάντε κλικ στην Ασφάλεια μακροεντολών(Macro Security) και επιλέξτε το πλαίσιο δίπλα στην επιλογή Ενεργοποίηση όλων των μακροεντολών (δεν συνιστάται, μπορεί να εκτελεστεί δυνητικά επικίνδυνος κώδικας). (Enable all macros (not recommended; potentially dangerous code can run). )
  • Στη συνέχεια κάντε κλικ στο OK.( OK.)

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

Βεβαιωθείτε(Make) ότι το έγγραφο προέρχεται από αξιόπιστη πηγή εάν εργάζεστε σε ένα κοινόχρηστο έργο στο Excel και σε άλλα προγράμματα της Microsoft(Microsoft) .

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

Δημιουργήστε μια μακροεντολή στο Excel(Create a Macro in Excel)

Όλες οι ενέργειες που πραγματοποιείτε στο Excel κατά την εγγραφή μιας μακροεντολής προστίθενται σε αυτό. 

  • Από την καρτέλα Προγραμματιστής, κάντε κλικ στο Εγγραφή μακροεντολής(Record Macro) .

  • Εισαγάγετε ένα όνομα μακροεντολής(Macro name) , ένα πλήκτρο συντόμευσης(Shortcut key) και μια περιγραφή. (Description. )Τα ονόματα μακροεντολών(Macro) πρέπει να ξεκινούν με ένα γράμμα και δεν μπορούν να έχουν κενά. Το πλήκτρο συντόμευσης πρέπει να είναι γράμμα.

Αποφασίστε πού θέλετε να αποθηκεύσετε τη μακροεντολή από τις ακόλουθες επιλογές:

  • Προσωπικό Βιβλίο Εργασίας Μακροεντολών(Personal Macro Workbook) : Αυτό θα δημιουργήσει ένα κρυφό έγγραφο Excel με αποθηκευμένες μακροεντολές που θα χρησιμοποιηθούν με οποιαδήποτε έγγραφα του Excel .
  • Νέο βιβλίο εργασίας(New Workbook) : Θα δημιουργήσει ένα νέο έγγραφο του Excel για την αποθήκευση των μακροεντολών που δημιουργήθηκαν.
  • Αυτό το βιβλίο εργασίας(This Workbook) : Αυτό θα εφαρμοστεί μόνο στο έγγραφο που επεξεργάζεστε αυτήν τη στιγμή.

Όταν τελειώσετε, κάντε κλικ στο OK(OK)

  • Εκτελέστε(Run) τις ενέργειες που θέλετε να αυτοματοποιήσετε. Όταν τελειώσετε, κάντε κλικ στο Διακοπή εγγραφής(Stop Recording)
  • Όταν θέλετε να αποκτήσετε πρόσβαση στη μακροεντολή σας, χρησιμοποιήστε τη συντόμευση πληκτρολογίου που της δώσατε.

Συγκεκριμένο Παράδειγμα Μακροεντολής(Specific Example Of a Macro)

Ας ξεκινήσουμε με ένα απλό υπολογιστικό φύλλο για τους πελάτες και πόσα οφείλουν. Θα ξεκινήσουμε δημιουργώντας μια μακροεντολή για τη μορφοποίηση του φύλλου εργασίας.

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

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

Εγγραφή The Macro(Record The Macro)

  • Κάντε κλικ στο Record Macro . Ας το ονομάσουμε Format_Customer_Data και κάντε κλικ στο OK(OK)
  • Για να λάβουμε τη μορφοποίηση που θέλουμε, θα αλλάξουμε το όνομα της πρώτης στήλης σε Όνομα(First Name)
  • Στη συνέχεια, εισάγετε μια στήλη δίπλα στο A και ονομάστε την Επώνυμο(Last Name)
  • Επισημάνετε(Highlight) όλα τα ονόματα στην πρώτη στήλη (η οποία εξακολουθεί να περιλαμβάνει το όνομα και το επώνυμο) και κάντε κλικ στο Δεδομένα(Data) από την πλοήγηση με κορδέλα.
  • Κάντε κλικ στο Κείμενο σε στήλες(Text to Columns) .

  • Επιλέξτε Οριοθετημένο(Delimited) > Επόμενο(Next ) > Διαχωρισμός κατά διάστημα(Separate by Space) > Επόμενο(Next ) > Τέλος(Finish) . Δείτε παρακάτω στιγμιότυπο οθόνης και πώς διαχωρίστηκαν το όνομα και το επίθετο με την παραπάνω διαδικασία.

  • Για να μορφοποιήσετε το πεδίο Οφειλόμενο υπόλοιπο(Balance Due) , επισημάνετε τα ποσά. Κάντε κλικ(Click) στην Αρχική σελίδα(Home ) > Μορφοποίηση υπό όρους(Conditional Formatting) > Επισημάνετε τους κανόνες κελιών(Highlight Cell Rules) > Μεγαλύτερο από(Greater Than ) > 0 .

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

  • Επιστρέψτε στον Προγραμματιστή(Developer ) και κάντε κλικ στο Διακοπή εγγραφής(Stop Recording) .

Εφαρμόστε τη μακροεντολή(Apply The Macro)

Ας ξεκινήσουμε με το αρχικό υπολογιστικό φύλλο πριν εγγράψουμε τη μακροεντολή για να τη μορφοποιήσουμε σωστά. Κάντε κλικ(Click) στο Μακροεντολές(Macros) , επιλέξτε και Εκτελέστε(Run) τη μακροεντολή που μόλις δημιουργήσατε.

Όταν εκτελείτε μια μακροεντολή, όλη η μορφοποίηση γίνεται για εσάς. Αυτή η μακροεντολή που μόλις δημιουργήσαμε είναι αποθηκευμένη στο Visual Basic Editor .

Οι χρήστες μπορούν να εκτελούν μακροεντολές με πολλούς διαφορετικούς τρόπους. Διαβάστε την Εκτέλεση μακροεντολής(Run a macro) για να μάθετε περισσότερα.  

Μάθετε περισσότερα για το VBA(Learn More About VBA)

Για να μάθετε για το VBA, κάντε κλικ στο Macro από την καρτέλα Developer . Βρείτε ένα που έχετε δημιουργήσει και κάντε κλικ στο Επεξεργασία.(Edit.)

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

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

Δημιουργήστε ένα κουμπί για να ξεκινήσετε με το VBA(Create a Button To Get Started With VBA)

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

  • Για να εισαγάγετε ένα στοιχείο κουμπιού, μεταβείτε στην καρτέλα  Προγραμματιστής .(Developer )
  • Επιλέξτε ActiveX Command Button από το αναπτυσσόμενο μενού δίπλα στην επιλογή Insert στην ενότητα Controls .

  • Σύρετε(Drag) το κουμπί οπουδήποτε στο υπολογιστικό φύλλο, ώστε να έχετε εύκολη πρόσβαση σε αυτό και να το αλλάξετε αργότερα, αν θέλετε.

  • Για να επισυνάψετε τον κωδικό, κάντε δεξί κλικ στο κουμπί και επιλέξτε Ιδιότητες(Properties) . Θα διατηρήσουμε το Όνομα(Name) ως CommandButton και το Caption to Convert (αυτό είναι το κείμενο του κουμπιού).

Προσθέστε κώδικα για να δώσετε τη λειτουργικότητα του κουμπιού(Add Code To Give The Button Functionality)

Η κωδικοποίηση VBA(VBA) δεν πραγματοποιείται στη διεπαφή του Excel . Γίνεται σε ξεχωριστό περιβάλλον.  

  • Μεταβείτε στην καρτέλα Προγραμματιστής(Developer) και βεβαιωθείτε ότι η Λειτουργία σχεδίασης(Design Mode) είναι ενεργή.

  • Για να αποκτήσετε πρόσβαση στον κωδικό του κουμπιού που μόλις δημιουργήσαμε, κάντε δεξί κλικ πάνω του και επιλέξτε Προβολή κώδικα(View Code) .

  • Κοιτάζοντας τον κώδικα στο παρακάτω στιγμιότυπο οθόνης, παρατηρήστε ότι η αρχή ( Private Sub ) και το τέλος ( End Sub ) του κώδικα είναι ήδη εκεί.

  • Ο παρακάτω κώδικας θα οδηγήσει τη διαδικασία μετατροπής νομίσματος.

ActiveCell.Value = (ActiveCell * 1.28)

Ο σκοπός μας σε αυτήν την ενότητα είναι να μετατρέψουμε το νόμισμα στο υπολογιστικό μας φύλλο. Το παραπάνω σενάριο αντικατοπτρίζει τη συναλλαγματική ισοτιμία από GBP σε USD . Η νέα τιμή ενός κελιού θα είναι αυτή που υπάρχει επί του παρόντος πολλαπλασιαζόμενη επί 1,28.

Το παρακάτω στιγμιότυπο οθόνης σάς δείχνει πώς εμφανίζεται ο κώδικας στο παράθυρο VBA μετά την εισαγωγή του.(VBA)

  • Μεταβείτε στο Αρχείο(File ) στην επάνω πλοήγηση και κάντε κλικ στο Κλείσιμο και Επιστροφή στο Microsoft Excel(click on Close and Return to Microsoft Excel) για να επιστρέψετε στην κύρια διεπαφή του Excel .

Δούλεψε?(Did It Work?)

Για να μπορέσετε να δοκιμάσετε τον κώδικά σας, πρέπει πρώτα να απενεργοποιήσετε τη λειτουργία σχεδίασης(Design Mode) (κάντε κλικ σε αυτήν) για να αποφύγετε περαιτέρω τροποποιήσεις και να δώσετε τη λειτουργικότητα του κουμπιού.

  • Πληκτρολογήστε(Type) οποιονδήποτε αριθμό στο υπολογιστικό φύλλο σας και, στη συνέχεια, κάντε κλικ στο κουμπί Μετατροπή(Convert) . Εάν η τιμή του αριθμού σας αυξηθεί κατά περίπου το ένα τέταρτο, λειτούργησε.

Για αυτό το παράδειγμα, έβαλα τον αριθμό 4 σε ένα κελί. Αφού κάνετε κλικ στο Convert , ο αριθμός άλλαξε σε 5.12. Δεδομένου ότι 4 φορές το 1,28 είναι 5,12, ο κωδικός εκτελέστηκε σωστά.

Τώρα που καταλαβαίνετε πώς να δημιουργήσετε μια μακροεντολή ή μια δέσμη ενεργειών στο Excel , μπορείτε να τα χρησιμοποιήσετε για να αυτοματοποιήσετε μια πληθώρα ενεργειών στο Excel .



About the author

"Είμαι ανεξάρτητος ειδικός στα Windows και στο Office. Έχω πάνω από 10 χρόνια εμπειρίας στην εργασία με αυτά τα εργαλεία και μπορώ να σας βοηθήσω να αξιοποιήσετε στο έπακρο. Οι δεξιότητές μου περιλαμβάνουν: εργασία με Microsoft Word, Excel, PowerPoint και Outlook, δημιουργία ιστού σελίδες και εφαρμογές και βοηθώντας τους πελάτες να επιτύχουν τους επιχειρηματικούς τους στόχους."



Related posts