VBA GetOpenFilename | Πώς να χρησιμοποιήσετε τη μέθοδο GetOpenFilename στο VBA;

Το GetOpenFilename είναι μια μέθοδος που είναι επίσης ένα χαρακτηριστικό του FSO, αυτή η μέθοδος χρησιμοποιείται στο VBA για να βρει ένα συγκεκριμένο αρχείο με ένα όνομα αρχείου και να το επιλέξει, ο σημαντικός παράγοντας σε αυτήν τη μέθοδο είναι η διαδρομή του ονόματος αρχείου που παρέχεται για να το ανοίξει, εμείς μπορεί είτε να περάσει τη διαδρομή του ονόματος αρχείου στη συνάρτηση είτε μπορούμε να ζητήσουμε από τον χρήστη να παρουσιάσει μια διαδρομή αρχείου για να την επιλέξει.

Εφαρμογή Excel VBA.GetOpenFilename

Υπάρχουν καταστάσεις όπου πρέπει να έχουμε πρόσβαση στο συγκεκριμένο όνομα αρχείου και αυτό μπορεί να είναι δυνατό με την κωδικοποίηση VBA. Για να αποκτήσετε πρόσβαση στο αρχείο, πρέπει να αναφέρουμε επίσης τη διαδρομή του φακέλου και το όνομα του αρχείου μαζί με την επέκταση του αρχείου. Για να λάβετε το όνομα του αρχείου, πολλοί κωδικοποιητές θα δώσουν στο πλαίσιο εισαγωγής VBA ως επιλογές για την εισαγωγή της διαδρομής αρχείου και του ονόματος αρχείου. Αλλά αυτή δεν είναι καλή επιλογή για εξάσκηση, επειδή όταν παρουσιάζετε ένα πλαίσιο εισαγωγής μπροστά από τον χρήστη, δεν θυμούνται πάντα τη διαδρομή αρχείου, κάθετες κάθετες για να διαχωρίσουν έναν φάκελο από έναν άλλο φάκελο, ονόματα αρχείων και επέκταση των αρχείων . Αυτό κάνει την είσοδο που δίνεται από τον χρήστη messier και στο τέλος, όλα θα τακτοποιηθούν ακόμα και αν υπάρχει μικρό λάθος χαρακτήρας χώρου. Ο καλύτερος τρόπος είναι να αντικαταστήσετε το πλαίσιο εισαγωγής με τη μέθοδο της VBA που ονομάζεται "GetOpenFileName".

Σε αυτό το άρθρο, θα σας δείξουμε πώς να χρησιμοποιήσετε το VBA GetOpenFileName για να λάβετε το όνομα του αρχείου χωρίς σφάλματα.

Τι κάνει το GetOpenFilename στο Excel VBA;

Το VBA "GetOpenFileName" επιτρέπει στο χρήστη να επιλέξει το αρχείο από τον υπολογιστή στον οποίο εργαζόμαστε χωρίς να ανοίξει το αρχείο.

Με τη βοήθεια της μεθόδου "GetOpenFileName", μπορούμε πραγματικά να παρουσιάσουμε ένα πλαίσιο διαλόγου μπροστά από τον χρήστη για να επιλέξετε το αρχείο στον απαιτούμενο φάκελο. Το "GetOpenFileName" θα αντιγράψει τη θέση του αρχείου μαζί με το όνομα αρχείου και την επέκταση αρχείου.

Σύνταξη του GetOpenFilename στο Excel VBA

Ρίξτε μια ματιά στη σύνταξη της μεθόδου "GetOpenFilename".

  • Φίλτρο αρχείων: Σε αυτό το όρισμα, μπορούμε να καθορίσουμε το είδος των αρχείων που θα εμφανιστούν για επιλογή. Για παράδειγμα, αν αναφέρετε "Excel Files, *. Xlsx" θα εμφανίζει μόνο αρχεία Excel που έχουν αποθηκευτεί με την επέκταση excel "xlsx", δεν θα εμφανίζονται άλλα αρχεία. Εάν αγνοήσετε όλα τα είδη αρχείων θα εμφανιστούν.
  • Ευρετήριο φίλτρου: Με αυτό, περιορίζουμε τον χρήστη να επιλέξει τον τύπο αρχείου. Μπορούμε να ορίσουμε λίστα με τον αριθμό των φίλτρων που θα είναι ορατά στο Φίλτρο αρχείων.
  • Τίτλος: Εμφανίζει τον τίτλο του πλαισίου διαλόγου επιλεγμένου αρχείου.
  • Κείμενο κουμπιού: Αυτό ισχύει μόνο για Macintosh.
  • Πολλαπλή επιλογή: ΑΛΗΘΕΙΑ εάν θέλετε να επιλέξετε πολλά αρχεία ή αλλιώς FALSE. Η προεπιλεγμένη τιμή είναι ψευδής.

Παράδειγμα GetOpenFilename στο Excel VBA

Ακολουθούν τα παραδείγματα του VBA Application.GetOpenFilename.

Μπορείτε να κατεβάσετε αυτό το πρότυπο VBA GetOpenFilename Excel εδώ - Πρότυπο VBA GetOpenFilename Excel

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

Βήμα 1: Ξεκινήστε την υπορουτίνα.

Κώδικας:

 Υπο GetFile_Example1 () End Sub 

Βήμα 2: Δηλώστε μια μεταβλητή ως συμβολοσειρά.

Κώδικας:

 Υπο GetFile_Example1 () Dim File Όνομα ως συμβολοσειρά End Sub 

Βήμα 3: Για αυτήν τη μεταβλητή, θα εκχωρήσουμε το GetOpenFileName.

Κώδικας:

 Sub GetFile_Example1 () Dim DimName Όνομα ως συμβολοσειράName = Application.GetOpenFilename 

Από τώρα, έχω αγνοήσει όλες τις παραμέτρους.

Βήμα 4: Τώρα δείξτε το αποτέλεσμα της μεταβλητής στο πλαίσιο μηνύματος.

Κώδικας:

 Υπο GetFile_Example1 () Dim DimName Όνομα String FileName = Application.GetOpenFilename () MsgBox FileName End Sub 

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

Θα επιλέξω οποιοδήποτε αρχείο και θα κάνω κλικ στο ok.

Μόλις επιλέξω το αρχείο πήρα ένα πλαίσιο μηνύματος σε VBA έτσι. Εμφανίζει την πλήρη διαδρομή του φακέλου και το επιλεγμένο όνομα αρχείου excel μαζί με την επέκταση αρχείου.

Όπως μπορούμε να δούμε στην παραπάνω εικόνα, θα μπορούσαμε να δούμε όλα τα είδη αρχείων. Τώρα θα προσθέσω την πρώτη παράμετρο, δηλαδή το Φίλτρο αρχείων ως "Excel Files, *. Xlsx".

Κώδικας:

 Sub GetFile_Example1 () Dim DimName Όνομα ως συμβολοσειρά Όνομα αρχείου = Application.GetOpenFilename (FileFilter: = "Excel Files, *. Xlsx") MsgBox FileName End Sub 

Τώρα αν εκτελέσω αυτόν τον κώδικα χρησιμοποιώντας το πλήκτρο F5 ή χειροκίνητα, θα βλέπω μόνο αρχεία Excel με την επέκταση "xlsx".

Έτσι, μπορούμε να χρησιμοποιήσουμε τη μέθοδο "VBA Application.GetOpenFileName" για να λάβουμε τη διαδρομή του φακέλου μαζί με το Όνομα αρχείου και την επέκταση του αρχείου.