Αυτή η μακροεντολή Excel σάς επιτρέπει να περάσετε μια διαδρομή αρχείου για να αξιολογήσετε εάν το αρχείο βρίσκεται εκεί. Για παράδειγμα, μπορεί να έχετε μια διαδικασία που χειρίζεται ένα αρχείο κάπου στον υπολογιστή σας. Για παράδειγμα, μπορεί να χρειαστεί να ανοίξετε ένα υπάρχον βιβλίο εργασίας για να προσθέσετε δεδομένα σε αυτό σε καθημερινή βάση. Σε αυτήν την περίπτωση, ίσως χρειαστεί να ελέγξετε για να δείτε εάν το αρχείο που πρέπει να χειριστείτε υπάρχει.
Πώς λειτουργεί η μακροεντολή
Το πρώτο πράγμα που πρέπει να παρατηρήσετε σχετικά με αυτήν τη μακροεντολή είναι ότι είναι μια συνάρτηση, όχι μια διαδικασία Sub. Κάνοντας αυτή τη μακροεντολή συνάρτηση, μπορείτε να περάσετε οποιαδήποτε διαδρομή αρχείου σε αυτήν.
Σε αυτήν τη μακροεντολή, χρησιμοποιείτε τη συνάρτηση Dir, η οποία επιστρέφει μια συμβολοσειρά που αντιπροσωπεύει το όνομα του αρχείου που ταιριάζει με αυτό που μεταβιβάζετε σε αυτό. Αυτή η συνάρτηση μπορεί να χρησιμοποιηθεί με πολλούς τρόπους, αλλά εδώ, μπορείτε να τη χρησιμοποιήσετε για να ελέγξετε αν υπάρχει η διαδρομή αρχείου που μεταβιβάζετε σε αυτήν:
Η συνάρτηση FileExists (FPath ως συμβολοσειρά) ως Boolean
'Βήμα 1: Δηλώστε τις μεταβλητές σας
Dim FName As String
'Βήμα 2: Χρησιμοποιήστε τη συνάρτηση Dir για να λάβετε το όνομα αρχείου
FName = Dir(FPath)
'Βήμα 3: Εάν υπάρχει αρχείο, επιστρέψτε το True. αλλιώς Λάθος
Αν FName <> " Τότε FileExists = True _
Άλλο: FileExists = False
Λειτουργία τερματισμού
Το βήμα 1 δηλώνει μια μεταβλητή String που κρατά το όνομα αρχείου που επιστρέφει από τη συνάρτηση Dir. FName είναι το όνομα της μεταβλητής String.
Στο Βήμα 2, προσπαθείτε να ορίσετε τη μεταβλητή FName. Αυτό το κάνετε περνώντας τη μεταβλητή FPath στη συνάρτηση Dir. Αυτή η μεταβλητή FPath μεταβιβάζεται μέσω των δηλώσεων συναρτήσεων (δείτε την πρώτη γραμμή του κώδικα). Αυτή η δομή σας αποτρέπει από το να χρειάζεται να κωδικοποιήσετε ένα μονοπάτι αρχείου, μεταβιβάζοντάς το ως μεταβλητή.
Εάν η μεταβλητή FName δεν μπορεί να οριστεί, η διαδρομή που περάσατε δεν υπάρχει. Έτσι, η μεταβλητή FName είναι κενή. Το βήμα 3 απλώς μεταφράζει αυτό το αποτέλεσμα σε μια έκφραση True ή False.
Και πάλι, αυτή η συνάρτηση μπορεί να χρησιμοποιηθεί για την αξιολόγηση οποιασδήποτε διαδρομής αρχείου περνάτε σε αυτήν. Αυτή είναι η ομορφιά της σύνταξης της μακροεντολής ως συνάρτησης.
Η ακόλουθη μακροεντολή δείχνει τον τρόπο χρήσης αυτής της συνάρτησης:
Sub Macro1()
If FileExists("C:TempMyNewBook.xlsx") = True Τότε
MsgBox "Το αρχείο υπάρχει."
Αλλού
MsgBox "Το αρχείο δεν υπάρχει."
Τέλος εαν
End Sub
Πώς να χρησιμοποιήσετε τη μακροεντολή
Για να εφαρμόσετε αυτήν τη μακροεντολή, μπορείτε να αντιγράψετε και να επικολλήσετε και τα δύο κομμάτια κώδικα σε μια τυπική λειτουργική μονάδα:
Ενεργοποιήστε το Visual Basic Editor πατώντας Alt+F11.
Κάντε δεξί κλικ στο όνομα του έργου/του βιβλίου εργασίας στο παράθυρο του έργου.
Επιλέξτε Εισαγωγή→ Μονάδα.
Πληκτρολογήστε ή επικολλήστε τον κωδικό στη μονάδα που δημιουργήθηκε πρόσφατα.