Πώς να αυτοματοποιήσετε εργασίες ρουτίνας στο Excel με μακροεντολές

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

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

Τι είναι το Macro;

Μια μακροεντολή στο Microsoft Office (ναι, αυτή η λειτουργία λειτουργεί το ίδιο σε πολλές εφαρμογές του πακέτου Microsoft Office) είναι ένας κώδικας προγράμματος σε μια γλώσσα προγραμματισμού Visual Basic για εφαρμογές (VBA) αποθηκευμένο μέσα στο έγγραφο. Για να γίνει πιο σαφές, ένα έγγραφο του Microsoft Office μπορεί να συγκριθεί με μια σελίδα HTML και, στη συνέχεια, μια μακροεντολή είναι ανάλογο του Javascript. Αυτό που μπορεί να κάνει η Javascript με δεδομένα HTML σε μια ιστοσελίδα μοιάζει πολύ με αυτό που μπορεί να κάνει μια μακροεντολή με δεδομένα σε ένα έγγραφο του Microsoft Office.

Οι μακροεντολές μπορούν να κάνουν σχεδόν οτιδήποτε θέλετε σε ένα έγγραφο. Εδώ είναι μερικά από αυτά (ένα πολύ μικρό μέρος):

  • Εφαρμογή στυλ και μορφοποίησης.
  • Εκτελέστε διάφορες λειτουργίες με αριθμητικά δεδομένα και δεδομένα κειμένου.
  • Χρησιμοποιήστε εξωτερικές πηγές δεδομένων (αρχεία βάσης δεδομένων, έγγραφα κειμένου κ.λπ.)
  • Δημιουργήστε ένα νέο έγγραφο.
  • Κάντε όλα τα παραπάνω σε οποιονδήποτε συνδυασμό.

Δημιουργία μακροεντολής – ένα πρακτικό παράδειγμα

Για παράδειγμα, ας πάρουμε το πιο κοινό αρχείο CSV. Αυτός είναι ένας απλός πίνακας 10×20 γεμάτος με αριθμούς από το 0 έως το 100 με επικεφαλίδες για στήλες και γραμμές. Ο στόχος μας είναι να μετατρέψουμε αυτό το σύνολο δεδομένων σε έναν πίνακα που έχει διαμορφωθεί στην παρούσα φάση και να δημιουργήσουμε σύνολα σε κάθε σειρά.

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

Για να δημιουργήσετε μια μακροεντολή, ανοίξτε Δες (Πληκτρολογήστε) > Μακροεντολές (Μακροεντολή) > Εγγραφή μακροεντολής (Μακροεγγραφή…)

Δώστε ένα όνομα στη μακροεντολή σας (χωρίς κενά) και κάντε κλικ OK.

Από αυτή τη στιγμή, ΟΛΕΣ οι ενέργειές σας με το έγγραφο καταγράφονται: αλλαγές σε κελιά, κύλιση στον πίνακα, ακόμη και αλλαγή μεγέθους του παραθύρου.

Το Excel σηματοδοτεί ότι η λειτουργία εγγραφής μακροεντολής είναι ενεργοποιημένη σε δύο σημεία. Πρώτον, στο μενού Μακροεντολές (Μακροεντολές) – αντί για συμβολοσειρά Εγγραφή μακροεντολής Εμφανίστηκε η γραμμή (Εγγραφή μακροεντολής…). Διακοπή εγγραφής (Διακοπή εγγραφής).

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

Τώρα που είναι ενεργοποιημένη η λειτουργία εγγραφής μακροεντολών, ας περάσουμε στην εργασία μας. Πρώτα απ 'όλα, ας προσθέσουμε κεφαλίδες για τα δεδομένα σύνοψης.

Στη συνέχεια, εισαγάγετε τους τύπους στα κελιά σύμφωνα με τα ονόματα των επικεφαλίδων (δίνονται παραλλαγές των τύπων για τα αγγλικά και οι εκδόσεις του Excel, οι διευθύνσεις κελιών είναι πάντα λατινικά γράμματα και αριθμοί):

  • =SUM(B2:K2) or =SUM(B2:K2)
  • =ΜΕΣΟΣ (B2:K2) or =СРЗНАЧ(B2:K2)
  • =MIN(B2:K2) or =MIN(B2:K2)
  • =MAX(B2:K2) or =MAX(B2:K2)
  • =ΔΙΑΜΕΣΟΣ(B2:K2) or =ΔΙΑΜΕΣΟΣ(B2:K2)

Τώρα επιλέξτε τα κελιά με τύπους και αντιγράψτε τα σε όλες τις σειρές του πίνακα μας σύροντας τη λαβή αυτόματης συμπλήρωσης.

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

Στη συνέχεια, θα συνοψίσουμε τα αποτελέσματα για ολόκληρο τον πίνακα, για αυτό κάνουμε μερικές ακόμη μαθηματικές πράξεις:

Αντίστοιχα:

  • =SUM(L2:L21) or =SUM(L2:L21)
  • =ΜΕΣΟΣ (B2:K21) or =СРЗНАЧ(B2:K21) – για τον υπολογισμό αυτής της τιμής, είναι απαραίτητο να ληφθούν ακριβώς τα αρχικά δεδομένα του πίνακα. Εάν λάβετε τον μέσο όρο των μέσων όρων για μεμονωμένες σειρές, το αποτέλεσμα θα είναι διαφορετικό.
  • =MIN(N2:N21) or =MIN(N2:N21)
  • =MAX(O2:O21) or =MAX(O2:O21)
  • =ΔΙΑΜΕΣΟΣ(B2:K21) or =ΔΙΑΜΕΣΟΣ(B2:K21) – θεωρούμε ότι χρησιμοποιούμε τα αρχικά δεδομένα του πίνακα, για τον λόγο που αναφέρθηκε παραπάνω.

Τώρα που τελειώσαμε με τους υπολογισμούς, ας κάνουμε λίγη μορφοποίηση. Αρχικά, ας ορίσουμε την ίδια μορφή εμφάνισης δεδομένων για όλα τα κελιά. Επιλέξτε όλα τα κελιά στο φύλλο, για να το κάνετε αυτό, χρησιμοποιήστε τη συντόμευση πληκτρολογίου Ctrl + Aή κάντε κλικ στο εικονίδιο Επιλογή όλων, το οποίο βρίσκεται στην τομή των επικεφαλίδων γραμμής και στήλης. Στη συνέχεια κάντε κλικ Στυλ κόμματος καρτέλα (Οριοθετημένη μορφή). Αρχική (Σπίτι).

Στη συνέχεια, αλλάξτε την εμφάνιση των κεφαλίδων στήλης και γραμμής:

  • Έντονη γραμματοσειρά.
  • Στοίχιση στο κέντρο.
  • Γέμισμα χρώματος.

Και τέλος, ας ρυθμίσουμε τη μορφή των συνόλων.

Έτσι πρέπει να φαίνεται τελικά:

Εάν όλα σας ταιριάζουν, σταματήστε την εγγραφή της μακροεντολής.

Συγχαρητήρια! Μόλις καταγράψατε την πρώτη σας μακροεντολή στο Excel μόνοι σας.

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

Για να διαγράψετε όλα τα κελιά από δεδομένα, κάντε δεξί κλικ στο εικονίδιο Επιλογή όλων, το οποίο βρίσκεται στη διασταύρωση των επικεφαλίδων γραμμής και στήλης και από το μενού περιβάλλοντος, επιλέξτε Διαγραφή (Διαγράφω).

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

Ένα σημαντικό σημείο! Εάν αποθηκεύσετε το αρχείο με την επέκταση XLTX, τότε η μακροεντολή δεν θα λειτουργήσει σε αυτήν. Παρεμπιπτόντως, μπορείτε να αποθηκεύσετε το βιβλίο εργασίας ως πρότυπο Excel 97-2003, το οποίο έχει τη μορφή XLT, υποστηρίζει επίσης μακροεντολές.

Όταν το πρότυπο αποθηκεύεται, μπορείτε να κλείσετε με ασφάλεια το Excel.

Εκτέλεση μακροεντολής στο Excel

Πριν αποκαλύψετε όλες τις δυνατότητες της μακροεντολής που δημιουργήσατε, νομίζω ότι είναι σωστό να δώσουμε προσοχή σε μερικά σημαντικά σημεία σχετικά με τις μακροεντολές γενικά:

  • Οι μακροεντολές μπορεί να είναι επιβλαβείς.
  • Διαβάστε ξανά την προηγούμενη παράγραφο.

Ο κώδικας VBA είναι πολύ ισχυρός. Συγκεκριμένα, μπορεί να εκτελέσει λειτουργίες σε αρχεία εκτός του τρέχοντος εγγράφου. Για παράδειγμα, μια μακροεντολή μπορεί να διαγράψει ή να τροποποιήσει οποιαδήποτε αρχεία σε έναν φάκελο Τα έγγραφά μου. Για αυτόν τον λόγο, εκτελέστε και επιτρέψτε μακροεντολές μόνο από πηγές που εμπιστεύεστε.

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

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

Όταν εισάγετε δεδομένα από ένα αρχείο CSV, το Excel μπορεί να σας ζητήσει να ορίσετε ορισμένες ρυθμίσεις για να μεταφέρετε σωστά τα δεδομένα στον πίνακα.

Όταν ολοκληρωθεί η εισαγωγή, μεταβείτε στο μενού Μακροεντολές καρτέλα (Μακροεντολές). Δες (Προβολή) και επιλέξτε μια εντολή Προβολή μακροεντολών (Μακροεντολή).

Στο παράθυρο διαλόγου που ανοίγει, θα δούμε μια γραμμή με το όνομα της μακροεντολής μας FormatData. Επιλέξτε το και κάντε κλικ τρέξιμο (Εκτέλεση).

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

Ας δούμε κάτω από την κουκούλα: Πώς λειτουργεί μια μακροεντολή;

Όπως αναφέρθηκε πολλές φορές, μια μακροεντολή είναι κώδικας προγράμματος σε μια γλώσσα προγραμματισμού. Visual Basic για εφαρμογές (VBA). Όταν ενεργοποιείτε τη λειτουργία εγγραφής μακροεντολών, το Excel καταγράφει στην πραγματικότητα κάθε ενέργεια που κάνετε με τη μορφή οδηγιών VBA. Με απλά λόγια, το Excel γράφει τον κώδικα για εσάς.

Για να δείτε αυτόν τον κωδικό προγράμματος, χρειάζεστε στο μενού Μακροεντολές καρτέλα (Μακροεντολές). Δες (προβολή) κλικ Προβολή μακροεντολών (Μακροεντολές) και στο παράθυρο διαλόγου που ανοίγει, κάντε κλικ Αλλαγή (Αλλαγή).

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

Ας προσθέσουμε ένα ακόμη βήμα στην αποστολή μας…

Φανταστείτε ότι το αρχικό μας αρχείο δεδομένων data.csv δημιουργείται αυτόματα από κάποια διαδικασία και αποθηκεύεται πάντα στο δίσκο στο ίδιο μέρος. Για παράδειγμα, C:Datadata.csv – διαδρομή προς το αρχείο με ενημερωμένα δεδομένα. Η διαδικασία ανοίγματος αυτού του αρχείου και εισαγωγής δεδομένων από αυτό μπορεί επίσης να καταγραφεί σε μια μακροεντολή:

  1. Ανοίξτε το αρχείο προτύπου όπου αποθηκεύσαμε τη μακροεντολή − FormatData.
  2. Δημιουργήστε μια νέα μακροεντολή με το όνομα Φόρτωση Δεδομένων.
  3. Κατά την εγγραφή μιας μακροεντολής Φόρτωση Δεδομένων εισαγωγή δεδομένων από το αρχείο data.csv – όπως κάναμε στο προηγούμενο μέρος του μαθήματος.
  4. Όταν ολοκληρωθεί η εισαγωγή, σταματήστε την εγγραφή της μακροεντολής.
  5. Διαγράψτε όλα τα δεδομένα από τα κελιά.
  6. Αποθηκεύστε το αρχείο ως πρότυπο Excel με δυνατότητα μακροεντολής (επέκταση XLTM).

Έτσι, εκτελώντας αυτό το πρότυπο, έχετε πρόσβαση σε δύο μακροεντολές - η μία φορτώνει τα δεδομένα και η άλλη τα μορφοποιεί.

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

Αφήστε μια απάντηση