Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Visual Βασικά Προγραμματισμός

Πώς να βρείτε έναν κατάλογο και Subdirectory σε VBA

Η εύρεση ενός καταλόγου και υποκαταλόγους χρήση της Visual Basic for Applications ( VBA) δεν είναι τόσο περίπλοκο όπως μπορείτε να σκεφτείτε . Στην VBA , μπορείτε να χρησιμοποιήσετε τη λειτουργία " Dir" να αποκτήσουν τα ονόματα των καταλόγων σε μια διαδρομή . Αφού έχετε βρει τον κατάλογο που ψάχνετε , μπορείτε να χρησιμοποιήσετε τη διαδρομή καταλόγου για να βρείτε υποκαταλόγους . Η διαδικασία αυτή είναι χρήσιμη όταν θέλετε να αποθηκεύσετε ένα αρχείο σε ένα συγκεκριμένο κατάλογο , αλλά δεν έχουν την πλήρη διαδρομή για αυτό. Τα πράγματα που θα χρειαστείτε για Microsoft Office Excel
Η Εμφάνιση Περισσότερες οδηγίες
Η 1

Εκκίνηση του Microsoft Office Excel , κάντε κλικ στην καρτέλα "Προγραμματιστής " και κάντε κλικ στο " Visual Basic ". Κάντε κλικ στο "Εισαγωγή" μενού και κάντε κλικ στο " Ενότητα " για να εισάγετε μια νέα λειτουργική μονάδα κώδικα 2

Πληκτρολογήστε το παρακάτω, για να δημιουργήσετε μια νέα διαδικασία ρουτίνας : .

Private findDirectories Sub ( )

Η 3

Προσθέστε τον ακόλουθο κώδικα για να δημιουργήσετε τρεις μεταβλητές που θα χρησιμοποιήσετε για να βρείτε τον κατάλογο ενδιαφέροντος:

Dim startPath Όπως String Dim

myname Όπως String

Dim dirFound Όπως Boolean
Η

4 Ορίστε τη μονάδα δίσκου όπου θέλετε να αναζητήσετε τον κατάλογο και να πάρει το πρώτο κατάλογο :

startPath = " C : \\ "

myname = Dir ( startPath , vbDirectory )
5

Δημιουργήστε ένα βρόχο while , αναζήτηση κάθε κατάλογο στο " C : \\ " μέχρι να βρεθεί η " Temp " κατάλογο , και η κλήση η « getSubDirectories " διαδικασία ρουτίνας για να πάρει όλους τους υποφακέλους που βρέθηκαν στο " Temp " κατάλογο :

Do While dirFound = False

Αν myname <> " . " Και myname <> " .. " Στη συνέχεια

Αν ( GetAttr ( startPath & myname ) Και vbDirectory ) = vbDirectory Τότε

Αν myname = " Temp " Τότε

dirFound = True

Call getSubDirectories ( startPath & myname & "\\" )

End If

End If

End If

Αν ( dirFound = False ) τότε

myname = Dir

End If

Loop

End Sub
Η 6

Αντιγράψτε και επικολλήστε τον παρακάτω κώδικα για να δημιουργήσει τις " getSubDirectories « διαδικασία ρουτίνας και να εμφανίσετε όλες τις επιμέρους καταλόγους που βρέθηκαν στο " Temp " κατάλογο χρησιμοποιώντας το παράθυρο άμεσης παρακολούθησης :

Private Sub getSubDirectories ( startPath Όπως String )

Dim myname Όπως String

myname = Dir ( startPath , vbDirectory )

κάνετε Ενώ myname <> " "

Αν myname <> " . " Και myname <> " .. " Στη συνέχεια

Αν ( GetAttr ( startPath & myname ) Και vbDirectory ) = vbDirectory Τότε

Debug.Print myname

End If

End If

myname = Dir

Loop

End Sub
Η

7 Πατήστε το πλήκτρο " Ctrl " και " G" για να εμφανιστεί το παράθυρο άμεσης παρακολούθησης . Κάντε κλικ μέσα " findDirectories " και πατήστε " F5 " για να εκτελέσετε το πρόγραμμα .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα