Η προεπιλεγμένη λειτουργία εγγραφής του Excel είναι απόλυτη αναφορά. Όταν μια αναφορά κελιού σε έναν τύπο είναι απόλυτη αναφορά , δεν προσαρμόζεται αυτόματα όταν ο τύπος επικολλάται σε μια νέα θέση.
Ο καλύτερος τρόπος για να κατανοήσετε πώς αυτή η έννοια εφαρμόζεται στις μακροεντολές είναι να τη δοκιμάσετε. Καταγράψτε μια μακροεντολή που μετράει τις σειρές σε ένα φύλλο εργασίας. (Δείτε το σχήμα για παράδειγμα.)
Το προαθροισμένο φύλλο εργασίας σας που περιέχει δύο πίνακες.
Μπορείτε να βρείτε το δείγμα συνόλου δεδομένων που χρησιμοποιείται εδώ στο διαδίκτυο .
Ακολουθήστε αυτά τα βήματα για να καταγράψετε τη μακροεντολή:
Βεβαιωθείτε ότι το κελί A1 είναι επιλεγμένο.
Στην καρτέλα Προγραμματιστής, επιλέξτε Εγγραφή μακροεντολής.
Ονομάστε τη μακροεντολή AddTotal.
Επιλέξτε Αυτό το βιβλίο εργασίας για τη θέση αποθήκευσης.
Κάντε κλικ στο OK για να ξεκινήσει η εγγραφή.
Σε αυτό το σημείο, το Excel καταγράφει τις ενέργειές σας.
Κατά την εγγραφή του Excel, επιλέξτε το κελί A16 και πληκτρολογήστε Σύνολο στο κελί.
Επιλέξτε το πρώτο κενό κελί στη στήλη D (D16) και πληκτρολογήστε = COUNTA(D2:D15).
Αυτός ο τύπος δίνει μια καταμέτρηση αριθμών κλάδου στο κάτω μέρος της στήλης D. Χρησιμοποιείτε τη συνάρτηση COUNTA επειδή οι αριθμοί κλάδου αποθηκεύονται ως κείμενο.
Κάντε κλικ στο Διακοπή εγγραφής στην καρτέλα Προγραμματιστής για να σταματήσετε την εγγραφή της μακροεντολής.
Το συμπληρωμένο φύλλο εργασίας σας.
Το μορφοποιημένο φύλλο εργασίας πρέπει να μοιάζει με αυτό που εμφανίζεται εδώ.
Για να δείτε τη μακροεντολή σας σε δράση, διαγράψτε τη σειρά Σύνολο που μόλις προσθέσατε και αναπαράγετε τη μακροεντολή σας ακολουθώντας αυτά τα βήματα:
Στην καρτέλα Προγραμματιστής, επιλέξτε Μακροεντολές.
Βρείτε και επιλέξτε τη μακροεντολή AddTotal που μόλις καταγράψατε.
Κάντε κλικ στο κουμπί Εκτέλεση.
Εάν όλα πάνε καλά, η μακροεντολή αναπαράγει τις ενέργειές σας σε ένα T και δίνει στο τραπέζι σας ένα σύνολο. Τώρα εδώ είναι το θέμα. Ανεξάρτητα από το πόσο σκληρά προσπαθείτε, δεν μπορείτε να κάνετε τη μακροεντολή AddTotal να λειτουργήσει στον δεύτερο πίνακα. Γιατί; Γιατί το κατέγραψες ως απόλυτη μακροεντολή.
Για να κατανοήσετε τι σημαίνει αυτό, εξετάστε τον υποκείμενο κώδικα επιλέγοντας Μακροεντολές στην καρτέλα Προγραμματιστής. Εμφανίζεται το πλαίσιο διαλόγου Μακροεντολή.
Το πλαίσιο διαλόγου Excel Macro.
Επιλέξτε τη μακροεντολή AddTotal και κάντε κλικ στο κουμπί Επεξεργασία. Το Visual Basic Editor ανοίγει και εμφανίζει τον κώδικα που γράφτηκε κατά την εγγραφή της μακροεντολής σας:
Sub AddTotal()
Εύρος ("A16"). Επιλέξτε
ActiveCell.FormulaR1C1 = "Σύνολο"
Εύρος ("D16"). Επιλέξτε
ActiveCell.FormulaR1C1 = "=COUNTA(R[-14]C:R[-1]C)"
End Sub
Δώστε ιδιαίτερη προσοχή στις δύο γραμμές κώδικα που επιλέγουν την περιοχή A16 και την περιοχή D16. Επειδή η μακροεντολή καταγράφηκε σε λειτουργία απόλυτης αναφοράς, το Excel ερμήνευσε την επιλογή εύρους ως απόλυτες αναφορές κελιών. Με άλλα λόγια, ανεξάρτητα από το πού βρίσκεται ο κέρσορας στο βιβλίο εργασίας σας, όταν εκτελείτε την εγγεγραμμένη μακροεντολή, το Excel θα επιλέξει το κελί A16 και, στη συνέχεια, το κελί D16. Στην επόμενη ενότητα, ρίχνετε μια ματιά στο πώς φαίνεται η ίδια μακροεντολή όταν εγγράφεται σε λειτουργία σχετικής αναφοράς.