Αποθήκευση αρχείου VBA - 20 εύκολα παραδείγματα - παραδείγματα κώδικα VBA

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

Αποθήκευση βιβλίου εργασίας - VBA

Η εντολή Αποθήκευση VBA αποθηκεύει ένα αρχείο Excel παρόμοια με το κλικ στο εικονίδιο Αποθήκευση ή χρησιμοποιώντας τη Συντόμευση Αποθήκευσης (CTRL + S).

Αποθήκευση καθορισμένου βιβλίου εργασίας

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

1 Τετράδια εργασίας ("savefile.xlsm"). Αποθήκευση

Αποθηκεύστε το ενεργό βιβλίο εργασίας

Σημείωση: Αυτό είναι το τρέχον ενεργό βιβλίο εργασίας από το με στον κωδικό VBA, το οποίο διαφέρει από αυτό το βιβλίο εργασίας που περιέχει τον κωδικό εκτέλεσης.

1 ActiveWorkbook.Save

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

1 ThisWorkbook.save

Αποθηκεύστε όλα τα ανοιχτά βιβλία εργασίας

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

12345 Dim wb ως βιβλίο εργασίαςΓια κάθε wb σε εφαρμογή. Βιβλία εργασίαςwb. ΑποθήκευσηΕπόμενο wb

Αποθηκεύστε όλα τα ανοιχτά βιβλία εργασίας που δεν άνοιξαν μόνο για ανάγνωση

Σημείωση: το άνοιγμα ενός βιβλίου εργασίας σε λειτουργία ReadOnly αποτρέπει την αποθήκευση του αρχείου.
Για να αποθηκεύσετε το αρχείο θα πρέπει να χρησιμοποιήσετε το Save As και να το αποθηκεύσετε με διαφορετικό όνομα.

1234567 Dim wb ως βιβλίο εργασίαςΓια κάθε wb σε εφαρμογή. Βιβλία εργασίαςΑν όχι wb ReadOnly τότεwb. ΑποθήκευσηΤέλος εανΕπόμενο wb

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

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

1234 Dim wb ως βιβλίο εργασίαςορίστε wb = βιβλία εργασίας ("savefile.xlsm")wb.save

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

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

1234 Dim wbstring ως συμβολοσειράwbstring = "savefile.xlsm"βιβλία εργασίας (wbstring) .αποθήκευση

Αποθηκεύστε ένα βιβλίο εργασίας που ορίζεται από τη σειρά που άνοιξε.

Σημείωση: Το πρώτο βιβλίο εργασίας που ανοίγει θα έχει 1, το δεύτερο 2 κ.λπ.

1 τετράδια εργασίας (1) .αποθήκευση

Αποθηκεύστε ένα βιβλίο εργασίας με βάση μια τιμή κελιού

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

1234 Dim wbstring ως συμβολοσειράwbstring = activeworkbook.sheets ("sheet1"). range ("wb_save"). valueβιβλία εργασίας (wbstring) .αποθήκευση

Αποθήκευση ως - VBA

Η εντολή VBA Save As αποθηκεύει ένα αρχείο Excel ως νέο αρχείο, παρόμοιο με το κλικ στο εικονίδιο Αποθήκευση ως ή τη χρήση της συντόμευσης Αποθήκευση ως (Alt> F> A).
Πάνω, προσδιορίσαμε όλους τους τρόπους για να καθορίσουμε ποιο βιβλίο εργασίας θα αποθηκεύσουμε. Μπορείτε να χρησιμοποιήσετε αυτές ακριβώς τις ίδιες μεθόδους για να προσδιορίσετε τα βιβλία εργασίας όταν χρησιμοποιείτε Αποθήκευση ως.

Η Αποθήκευση ως συμπεριφέρεται παρόμοια με την Αποθήκευση, εκτός εάν πρέπει επίσης να καθορίσετε το όνομα του νέου αρχείου.
Στην πραγματικότητα, το Save As έχει πολλές πιθανές μεταβλητές για να ορίσει:

SaveAs Syntax:

123 αντικείμενο βιβλίου εργασίας .SaveAs (Όνομα αρχείου, FileFormat, Κωδικός πρόσβασης, WriteResPassword, _ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, _AddToMru, TextCodepage, TextVisualLayout, Local)

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

Αποθήκευση ως παραδείγματα σύνταξης:

Τετράδιο εργασίας Αποθήκευση ως - ameδιο κατάλογο

1 ActiveWorkbook.SaveAs Όνομα αρχείου: = "νέο"

ή

1 ActiveWorkbook.SaveAs "new"

ή

1234 Dim wbstring ως συμβολοσειράwbstring = "νέο"ActiveWorkbook.SaveAs Όνομα αρχείου: = wbstring

Τετράδιο εργασίας Αποθήκευση ως - Νέος κατάλογος

1 ActiveWorkbook.SaveAs Όνομα αρχείου: = "C: \ new"

ή

1234 Dim wbstring ως συμβολοσειράwbstring = "C: \ new"ActiveWorkbook.SaveAs Όνομα αρχείου: = wbstring =

Βιβλίο εργασίας Αποθήκευση ως - Νέος κατάλογος, Καθορισμός επέκτασης αρχείου

1 ActiveWorkbook.SaveAs Όνομα αρχείου: = "C: \ new.xlsx"

ή

1234 Dim wbstring ως συμβολοσειράwbstring = "C: \ new.xlsx"ActiveWorkbook.SaveAs Όνομα αρχείου: = wbstring

Βιβλίο εργασίας Αποθήκευση ως - Νέος κατάλογος, Καθορισμός επέκτασης αρχείου - Μέθοδος Alt

Μπορείτε επίσης να καθορίσετε τη μορφή αρχείου στο δικό της επιχείρημα.

1234 .xlsx = 51 '(52 για Mac).xlsm = 52 '(53 για Mac).xlsb = 50 '(51 για Mac).xls = 56 '(57 για Mac)
1 ActiveWorkbook.SaveAs Όνομα αρχείου: = "C: \ new", FileFormat: = 51

Βιβλίο εργασίας Αποθήκευση ως - Προσθήκη κωδικού πρόσβασης για άνοιγμα αρχείου

1 ActiveWorkbook.SaveAs Όνομα αρχείου: = "C: \ new.xlsx", Κωδικός πρόσβασης: = "κωδικός πρόσβασης"

Τετράδιο εργασίας Αποθήκευση ως - Προσθήκη κωδικού πρόσβασης για προνόμια εγγραφής

Εάν δεν παρέχεται σωστός κωδικός πρόσβασης, το βιβλίο εργασίας ανοίγει ως Μόνο για ανάγνωση

1 ActiveWorkbook.SaveAs Όνομα αρχείου: = "C: \ new.xlsx", WriteRes: = "password"

Τετράδιο εργασίας Αποθήκευση ως - Συνιστάται μόνο για ανάγνωση

TRUE για να εμφανίσετε ένα πλαίσιο μηνυμάτων, προτείνοντας το άνοιγμα του αρχείου μόνο για ανάγνωση.

1 ActiveWorkbook.SaveAs Όνομα αρχείου: = "C: \ new.xlsx", ReadOnlyRecommended: = TRUE

Άλλα Αποθήκευση ως Παραδείγματα

Δημιουργία πλαισίου διαλόγου Αποθήκευση ως

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

1 Application.GetSaveAsFilename

Δημιουργήστε το πλαίσιο αποθήκευσης ως διαλόγου με το προεπιλεγμένο όνομα αρχείου που παρέχεται

1 Application.GetSaveAsFilename InitialFilename: = "test.xlsx"

Δημιουργήστε το πλαίσιο αποθήκευσης ως διαλόγου με το προεπιλεγμένο όνομα αρχείου που παρέχεται

1 Application.GetSaveAsFilename InitialFilename: = "test.xlsx"

Δημιουργία και αποθήκευση νέου βιβλίου εργασίας

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

123456 Dim wb Ως βιβλίο εργασίαςΡύθμιση wb = Τετράδια εργασίας. ΠροσθήκηApplication.DisplayAlerts = Λάθοςwb.SaveAs Filename: = ”c: \ Test1.xlsx”Application.DisplayAlerts = True

Απενεργοποιήστε την Αποθήκευση ειδοποιήσεων

Καθώς εργάζεστε με την αποθήκευση στο VBA, μπορεί να συναντήσετε διάφορες αποθήκευση προειδοποιήσεων ή προτροπών. Για να απενεργοποιήσετε τις προειδοποιήσεις, προσθέστε αυτήν τη γραμμή κώδικα:

1 Application.DisplayAlerts = Λάθος

και για επανενεργοποίηση ειδοποιήσεων:

1 Application.DisplayAlerts = True
wave wave wave wave wave