Μερικές φορές μπορεί να θέλετε ή να χρειαστεί να δημιουργήσετε ένα βιβλίο εργασίας του Excel με αυτοματοποιημένο τρόπο. Για παράδειγμα, μπορεί να χρειαστεί να αντιγράψετε δεδομένα από έναν πίνακα και να τα επικολλήσετε σε ένα βιβλίο εργασίας που δημιουργήθηκε πρόσφατα. Η ακόλουθη μακροεντολή αντιγράφει μια περιοχή κελιών από το ενεργό φύλλο και επικολλά τα δεδομένα σε ένα νέο βιβλίο εργασίας.
Πώς λειτουργεί η μακροεντολή
Όπως θα δείτε όταν διαβάζετε τις γραμμές του κώδικα, αυτή η μακροεντολή είναι σχετικά διαισθητική:
Sub Macro1()
«Βήμα 1 Αντιγράψτε τα δεδομένα
Φύλλα ("Παράδειγμα 1"). Εύρος ("B4:C15"). Αντιγραφή
«Βήμα 2 Δημιουργήστε ένα νέο βιβλίο εργασίας
Τετράδια εργασιών.Προσθήκη
«Βήμα 3 Επικολλήστε τα δεδομένα
ActiveSheet.Paste Destination:=Range("A1")
«Βήμα 4 Απενεργοποιήστε τις ειδοποιήσεις εφαρμογών
Application.DisplayAlerts = False
«Βήμα 5 Αποθηκεύστε το βιβλίο εργασίας που δημιουργήθηκε πρόσφατα
ActiveWorkbook.SaveAs _
Όνομα αρχείου:="C:TempMyNewBook.xlsx"
«Βήμα 6 Ενεργοποιήστε ξανά τις ειδοποιήσεις εφαρμογών
Application.DisplayAlerts = True
End Sub
Στο Βήμα 1, μπορείτε απλώς να αντιγράψετε τα δεδομένα που κυμαίνονται από τα κελιά B4 έως C15. Σημειώστε ότι καθορίζετε τόσο το φύλλο όσο και το εύρος με όνομα. Αυτή η προσέγγιση είναι μια βέλτιστη πρακτική όταν εργάζεστε με πολλά ανοιχτά βιβλία εργασίας.
Στο Βήμα 2, χρησιμοποιείτε τη μέθοδο Προσθήκη του αντικειμένου βιβλίου εργασίας για να δημιουργήσετε ένα βιβλίο εργασίας. Το κενό βιβλίο εργασίας ισοδυναμεί με μη αυτόματη επιλογή Αρχείο→Νέο→Κενό έγγραφο στην κορδέλα του Excel.
Στο Βήμα 3, χρησιμοποιείτε τη μέθοδο Επικόλληση για να στείλετε τα αντιγραμμένα δεδομένα στο κελί A1 του νέου βιβλίου εργασίας.
Δώστε προσοχή στο γεγονός ότι ο κωδικός αναφέρεται στο αντικείμενο ActiveSheet. Όταν προσθέτετε ένα βιβλίο εργασίας, το νέο βιβλίο εργασίας κερδίζει αμέσως εστίαση και γίνεται το ενεργό βιβλίο εργασίας. (Το Excel κάνει το ίδιο όταν προσθέτετε ένα βιβλίο εργασίας με μη αυτόματο τρόπο.)
Στο Βήμα 4 του κώδικα, ορίζετε τη μέθοδο DisplayAlerts σε False, απενεργοποιώντας ουσιαστικά τις προειδοποιήσεις του Excel. Το κάνετε αυτό επειδή στο επόμενο βήμα του κώδικα, αποθηκεύετε το βιβλίο εργασίας που δημιουργήθηκε πρόσφατα. Μπορείτε να εκτελέσετε αυτήν τη μακροεντολή πολλές φορές, οπότε το Excel επιχειρεί να αποθηκεύσει το αρχείο πολλές φορές.
Τι συμβαίνει όταν προσπαθείτε να αποθηκεύσετε ένα βιβλίο εργασίας πολλές φορές; Αυτό είναι σωστό — το Excel σάς προειδοποιεί ότι υπάρχει ήδη ένα αρχείο με αυτό το όνομα και, στη συνέχεια, ρωτά εάν θέλετε να αντικαταστήσετε το προηγουμένως υπάρχον αρχείο. Επειδή ο στόχος σας είναι να αυτοματοποιήσετε τη δημιουργία του βιβλίου εργασίας, θέλετε να καταργήσετε αυτήν την προειδοποίηση.
Στο Βήμα 5, αποθηκεύετε το αρχείο χρησιμοποιώντας τη μέθοδο SaveAs. Σημειώστε ότι εισάγετε την πλήρη διαδρομή της θέσης αποθήκευσης, συμπεριλαμβανομένου του τελικού ονόματος αρχείου.
Επειδή απενεργοποιήσατε τις αλλαγές εφαρμογών στο Βήμα 4, πρέπει να τις ενεργοποιήσετε ξανά (δείτε Βήμα 6). Εάν δεν το κάνετε, το Excel συνεχίζει να αποκρύπτει όλες τις προειδοποιήσεις κατά την τρέχουσα περίοδο λειτουργίας.
Πώς να χρησιμοποιήσετε τη μακροεντολή
Για να εφαρμόσετε αυτήν τη μακροεντολή, μπορείτε να την αντιγράψετε και να την επικολλήσετε σε μια τυπική λειτουργική μονάδα:
Ενεργοποιήστε το Visual Basic Editor πατώντας Alt+F11.
Κάντε δεξί κλικ στο όνομα του έργου/του βιβλίου εργασίας στο παράθυρο του έργου.
Επιλέξτε Εισαγωγή→ Μονάδα.
Πληκτρολογήστε ή επικολλήστε τον κωδικό στη μονάδα που δημιουργήθηκε πρόσφατα.
Πιθανότατα θα χρειαστεί να αλλάξετε το όνομα του φύλλου, τη διεύθυνση εύρους και τη θέση αποθήκευσης.