Σε αυτό το σεμινάριο, θα μάθετε πώς μπορείτε να λάβετε ονόματα όλων των αρχείων σε ένα φάκελο και να τα τοποθετήσετε σε ένα φύλλο εργασίας.
Αντ 'αυτού, εάν θέλετε να μάθετε πώς να ελέγχετε εάν υπάρχει αρχείο, μπορείτε να κάνετε κλικ σε αυτόν τον σύνδεσμο: Το αρχείο VBA υπάρχει
Χρήση του FileSystemObject για λήψη της λίστας αρχείων σε ένα φάκελο
Το VBA σάς επιτρέπει να παραθέσετε όλα τα αρχεία από ένα φάκελο, χρησιμοποιώντας το FileSystemObject.
Θα δείξουμε πώς να λάβετε μια λίστα αρχείων στο φάκελο Γ: \ Φάκελος VBA και τοποθετήστε το στην πρώτη στήλη του φύλλου εργασίας. Αυτός ο φάκελος αποτελείται από 5 αρχεία, όπως φαίνεται στην Εικόνα 1:
Εικόνα 1. Αρχεία στο φάκελο C: \ VBA Folder
Εδώ είναι ο κωδικός:
1234567891011121314151617181920 | Sub LoopThroughFiles ()Dim oFSO Ως αντικείμενοDim oFolder As ObjectDim oFile ως αντικείμενοDim i As IntegerΟρισμός oFSO = CreateObject ("Scripting.FileSystemObject")Ρύθμιση oFolder = oFSO.GetFolder ("Φάκελος C: \ VBA")Για κάθε oFile In oFolder.FilesΚελιά (i + 1, 1) = oFile.Namei = i + 1Επόμενο αρχείοΤέλος υπο |
Στο παράδειγμα, δημιουργήστε πρώτα ένα αντικείμενο της κλάσης Scripting.FileSystemObject:
1 | Ορισμός oFSO = CreateObject ("Scripting.FileSystemObject") |
Στη συνέχεια, ορίστε το φάκελο χρησιμοποιώντας τη μέθοδο GetFolder:
1 | Ρύθμιση oFolder = oFSO.GetFolder ("Φάκελος C: \ VBA") |
Επόμενος βρόχος σε κάθε αρχείο στο o Φάκελος, χρησιμοποιώντας oFile.Name to λάβετε το όνομα κάθε αρχείου στο φάκελο και γράψτε το στην επόμενη κενή σειρά:
123456 | Για κάθε oFile In oFolder.FilesΚελιά (i + 1, 1) = oFile.Namei = i + 1Επόμενο αρχείο |
Εικόνα 2. Φύλλο εργασίας με τη λίστα των αρχείων στο φάκελο
Όπως μπορείτε να δείτε στην εικόνα 2, και τα 5 αρχεία από το φάκελο C: \ VBA παρατίθενται στην πρώτη στήλη.