Λειτουργία VBA FileCopy | Αντιγράψτε το αρχείο από έναν κατάλογο στον άλλο

Λειτουργία FileCopy του Excel VBA

Το File Copy είναι μια ενσωματωμένη συνάρτηση vba που χρησιμοποιείται για την αντιγραφή του αρχείου από μια τοποθεσία σε μια άλλη αναφερόμενη τοποθεσία. Για να χρησιμοποιήσουμε αυτήν τη λειτουργία, πρέπει να αναφέρουμε την τρέχουσα διαδρομή αρχείου και τη διαδρομή αρχείου προορισμού.

Εντάξει, ας δούμε τη σύνταξη της συνάρτησης FileCopy.

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

Παραδείγματα

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

Μπορείτε να κατεβάσετε αυτό το πρότυπο αντιγραφής αρχείων VBA Excel εδώ - Πρότυπο αντιγραφής αρχείων VBA Excel

Παράδειγμα # 1

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

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

Εντάξει, ας γράψουμε τον κωδικό για αυτό.

Ανοίξτε τη λειτουργία FileCopy μέσα στη διαδικασία Sub.

Κώδικας:

 Υπο FileCopy_Example1 ()

Αντίγραφο αρχείου

Τέλος Υποτ

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

Κώδικας:

 Υπο FileCopy_Example1 ()

FileCopy "D: \ My Files \ VBA \ April Files

Τέλος Υποτ

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

Κώδικας:

 Sub FileCopy_Example1 () FileCopy "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx", End Sub 

Τώρα στο δεύτερο όρισμα αναφέρετε πού πρέπει να επικολλήσουμε το αντιγραμμένο αρχείο.

Κώδικας:

 Sub FileCopy_Example1 () FileCopy "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx", "D: \ My Files \ VBA \ Destination Folder \ Sales April 2019.xlsx" End Sub 

Ένα πράγμα που πρέπει να κάνουμε στη συνέχεια αναφέροντας τη διαδρομή φακέλου στο τέλος πρέπει να αναφέρουμε και το όνομα του αρχείου στο όρισμα προορισμού

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

"D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx"

"D: \ My Files \ VBA \ Destination Folder \ Sales April 2019.xlsx"

Παράδειγμα # 2 - Χρησιμοποιήστε μεταβλητές για να αποθηκεύσετε τη διαδρομή προέλευσης και τη διαδρομή προορισμού.

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

Για παράδειγμα δείτε τον παρακάτω κώδικα.

Κώδικας:

 Sub FileCopy_Example2 () Dim SourcePath As String Dim DestinationPath As String SourcePath = "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx" DestinationPath = "D: \ My Files \ VBA \ Destination Folder \ Sales Απρίλιος 2019. xlsx "FileCopy SourcePath, DestinationPath End Sub 

Επιτρέψτε μου να σας εξηγήσω λεπτομερώς τον κωδικό.

Πρώτα έχω δηλώσει δύο μεταβλητές.

 Dim SourcePath As String Dim DestPath As String 

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

SourcePath = "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx"

Για τη δεύτερη μεταβλητή παρόμοια, έχω εκχωρήσει τη διαδρομή φακέλου προορισμού με όνομα αρχείου και επέκταση excel.

DestinationPath = "D: \ My Files \ VBA \ Destination Folder \ Sales April 2019.xlsx"

Στη συνέχεια, για τον τύπο FileCopy, έχω παράσχει αυτές τις μεταβλητές αντί για μεγάλες σειρές διαδρομών φακέλων.

FileCopy SourcePath, DestinationPath

Έτσι, μπορούμε να χρησιμοποιήσουμε μεταβλητές για να αποθηκεύσουμε τις διαδρομές και να τις χρησιμοποιήσουμε αποτελεσματικά.

Παράδειγμα # 3 - Σφάλμα με τη λειτουργία αντιγραφής αρχείου

Μερικές φορές η λειτουργία Αντιγραφή αρχείου συναντά ένα σφάλμα του "Άδεια Άδειας".

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