VBA Άνοιγμα πλαισίου διαλόγου αρχείων

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

Εάν θέλετε να μάθετε πώς να ανοίγετε και να κλείνετε ένα αρχείο, μπορείτε να κάνετε κλικ σε αυτόν τον σύνδεσμο: VBA Άνοιγμα/Κλείσιμο αρχείου

Άνοιγμα διαλόγου αρχείων στο VBA

Εάν θέλετε να ανοίξετε ένα αρχείο σε VBA, πρέπει πρώτα να ανοίξετε ένα παράθυρο διαλόγου για την επιλογή ενός αρχείου. Εδώ είναι ο κωδικός:

123 Dim strFile As StringstrFile = Application.GetOpenFilename (FileFilter: = "Αρχεία Excel (*.xlsx*),*.xlsx*", Τίτλος: = "Επιλέξτε ένα αρχείο Excel για άνοιγμα", MultiSelect: = True)

Όπως μπορείτε να δείτε, η μέθοδος έχει πολλές παραμέτρους. FileFilter σας επιτρέπει να φιλτράρετε τους τύπους αρχείων που χρειάζεστε, στην περίπτωση μας .xlsx αρχεία.

Στο Τίτλος παράμετρος, μπορείτε να ορίσετε έναν τίτλο του παραθύρου διαλόγου. Εάν θέλετε να επιτρέψετε το άνοιγμα πολλαπλών αρχείων, πρέπει να ορίσετε MultipleSelect στο True. Εάν δεν ορίσετε αυτήν την παράμετρο, μπορείτε να επιλέξετε μόνο ένα αρχείο.

Εικόνα 1. Ανοίξτε ένα παράθυρο διαλόγου αρχείου

Όπως μπορείτε να δείτε στην εικόνα 1, εμφανίζεται το παράθυρο διαλόγου με τον τίτλο Επιλέξτε ένα αρχείο ExcelΤο Μόνο τα αρχεία Excel φιλτράρονται και μπορούμε να επιλέξουμε πολλά αρχεία.

Ανοίξτε ένα πλαίσιο διαλόγου αρχείων σε έναν συγκεκριμένο φάκελο

Εάν θέλετε να ανοίξετε ένα παράθυρο διαλόγου σε έναν συγκεκριμένο φάκελο, πρέπει να χρησιμοποιήσετε τη μέθοδο .FileDialog με την παράμετρο msoFileDialogFilePickerΤο Στο παράδειγμα, θα ανοίξουμε ένα παράθυρο διαλόγου στο φάκελο Γ: \ Φάκελος VBAΤο Εδώ είναι ο κωδικός:

123456789101112131415161718192021 Dim fd Ως Office.FileDialogDim strFile As StringΟρισμός fd = Application.FileDialog (msoFileDialogFilePicker)Με fd.Φίλτρα.Καθαρίστε.Φίλτρα.Προσθέστε "Αρχεία Excel", "*.xlsx?", 1.Title = "Επιλέξτε ένα αρχείο Excel".AllowMultiSelect = Λάθος.InitialFileName = "Φάκελος C: \ VBA"Αν .Show = True ΤότεstrFile = .SelectedItems (1)Τέλος εανΤέλος με

Πρώτα πρέπει να δηλώσετε τη μεταβλητή fd τύπος Office.FileDialog και η μεταβλητή συμβολοσειράς για λήψη αρχείων:

12 Dim fd Ως Office.FileDialogDim strFile As String

Μετά από αυτό, πρέπει να ρυθμίσετε fd προς το Application.FileDialog (msoFileDialogFilePicker):

1 Ορισμός fd = Application.FileDialog (msoFileDialogFilePicker)

Τώρα, μέσα Με fd Τέλος με, μπορούμε να ορίσουμε πολλαπλές παραμέτρους:

1234567 .Φίλτρα.Καθαρίστε.Φίλτρα.Προσθέστε "Αρχεία Excel", "*.xlsx?", 1.Title = "Επιλέξτε ένα αρχείο Excel".AllowMultiSelect = Λάθος

Εδώ καθαρίζουμε τα φίλτρα αρχείων (.Φίλτρα.Καθαρίστε) και ορίστε το σε .xlsx (.Φίλτρα. Προσθέστε "Αρχεία Excel", "*.xlsx?", 1).

Επίσης, μπορούμε να ορίσουμε τον τίτλο του παραθύρου διαλόγου: .Title = "Επιλέξτε ένα αρχείο Excel".

Μπορούμε να περιορίσουμε έναν χρήστη να επιλέξει μόνο ένα αρχείο με:.AllowMultiSelect = Λάθος

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

1 .InitialFileName = "Φάκελος C: \ VBA"

Στο τέλος θα ανοίξουμε απλώς το παράθυρο διαλόγου με όλες τις παραμέτρους που είχαμε ορίσει προηγουμένως:

12345 Αν .Show = True ΤότεstrFile = .SelectedItems (1)Τέλος εαν

Όταν εκτελούμε αυτόν τον κώδικα, εμφανίζεται στο φάκελο το παράθυρο διαλόγου για το άνοιγμα του αρχείου Γ: \ Φάκελος VBA:

Εικόνα 2. Ανοίξτε ένα παράθυρο διαλόγου αρχείου σε έναν συγκεκριμένο φάκελο

Θα βοηθήσει στην ανάπτυξη του τόπου, μοιράζονται τη σελίδα με τους φίλους σας

wave wave wave wave wave