VBA GetOpenFilename

GetOpenFilename est une méthode qui est également un attribut de FSO, cette méthode est utilisée dans VBA pour trouver un certain fichier avec un nom de fichier et le sélectionner, le facteur important dans cette méthode est le chemin du nom de fichier fourni pour l'ouvrir, nous peut soit passer le chemin du nom de fichier dans la fonction, soit demander à l'utilisateur de présenter un chemin de fichier pour le sélectionner.

Excel VBA Application.GetOpenFilename

Il y a des situations où nous devons accéder au nom de fichier spécifique et cela peut être possible avec le codage VBA. Pour accéder au fichier, nous devons également mentionner le chemin du dossier et le nom du fichier avec son extension de fichier. Afin d'obtenir le nom du fichier, de nombreux codeurs donneront une zone de saisie VBA comme options pour entrer le chemin du fichier et le nom du fichier. Mais ce n'est pas une bonne option à pratiquer, car lorsque vous présentez une zone de saisie devant l'utilisateur, ils ne se souviennent pas toujours du chemin du fichier, des barres obliques inverses pour séparer un dossier d'un autre dossier, des noms de fichiers et de l'extension des fichiers . Cela rend l'entrée donnée par l'utilisateur plus compliquée et à la fin, tout sera foiré même s'il y a une erreur de petit espace. Le meilleur moyen est de remplacer la zone de saisie par la méthode de VBA appelée «GetOpenFileName».

Dans cet article, nous allons vous montrer comment utiliser VBA GetOpenFileName pour obtenir le nom de fichier sans aucune erreur.

Que fait GetOpenFilename dans Excel VBA?

VBA «GetOpenFileName» permet à l'utilisateur de sélectionner le fichier à partir de l'ordinateur sur lequel nous travaillons sans ouvrir le fichier.

Avec l'aide de la méthode «GetOpenFileName», nous pouvons en fait présenter une boîte de dialogue devant l'utilisateur pour sélectionner le fichier dans le dossier requis. "GetOpenFileName" copiera l'emplacement du fichier avec le nom et l'extension du fichier.

Syntaxe de GetOpenFilename dans Excel VBA

Jetez un œil à la syntaxe de la méthode «GetOpenFilename».

  • Filtre de fichiers: dans cet argument, nous pouvons spécifier le type de fichiers à afficher à sélectionner. Par exemple, si vous mentionnez «Fichiers Excel, *. Xlsx», seuls les fichiers Excel enregistrés avec l'extension Excel «xlsx» seront affichés, aucun autre fichier ne sera affiché. Si vous ignorez, tous les types de fichiers seront affichés.
  • Index de filtre: avec cela, nous limitons l'utilisateur à sélectionner le type de fichier. Nous pouvons lister spécifier le nombre de filtres à être visibles sous File Filter.
  • Titre: il affiche le titre de la boîte de dialogue de sélection de fichier.
  • Texte du bouton: Ceci est uniquement pour Macintosh.
  • Multi-Select: TRUE si vous souhaitez sélectionner plusieurs fichiers ou FALSE. La valeur par défaut est FALSE.

Exemple de GetOpenFilename dans Excel VBA

Vous trouverez ci-dessous les exemples de VBA Application.GetOpenFilename.

Vous pouvez télécharger ce modèle Excel VBA GetOpenFilename ici - Modèle Excel VBA GetOpenFilename

Écrivons un code pour obtenir le nom du fichier et l'adresse du chemin.

Étape 1: Démarrez le sous-programme.

Code:

 Sub GetFile_Example1 () End Sub 

Étape 2: Déclarez une variable en tant que chaîne.

Code:

 Sub GetFile_Example1 () Dim FileName As String End Sub 

Étape 3: Pour cette variable, nous attribuerons le GetOpenFileName.

Code:

 Sub GetFile_Example1 () Dim FileName As String FileName = Application.GetOpenFilename () End Sub 

À partir de maintenant, j'ai ignoré tous les paramètres.

Étape 4: affichez maintenant le résultat de la variable dans la boîte de message.

Code:

 Sub GetFile_Example1 () Dim FileName As String FileName = Application.GetOpenFilename () MsgBox FileName End Sub 

Maintenant, exécutez le code via la touche de raccourci Excel F5 ou manuellement, il affichera la boîte de dialogue ci-dessous pour sélectionner le fichier.

Je vais sélectionner n'importe quel fichier et cliquer sur ok.

Dès que je sélectionne le fichier, j'ai une boîte de message dans VBA comme celle-ci. Il montre le chemin complet du dossier et le nom du fichier Excel sélectionné avec l'extension de fichier.

Comme nous pouvons le voir dans l'image ci-dessus, nous pouvons voir toutes sortes de fichiers. Maintenant, je vais ajouter le premier paramètre, à savoir le filtre de fichier, sous la forme «Fichiers Excel, *. Xlsx».

Code:

 Sub GetFile_Example1 () Dim FileName As String FileName = Application.GetOpenFilename (FileFilter: = "Excel Files, *. Xlsx") MsgBox FileName End Sub 

Maintenant, si j'exécute ce code en utilisant la touche F5 ou manuellement, je ne verrai que les fichiers Excel avec l'extension «xlsx».

Comme cela, nous pouvons utiliser la méthode «VBA Application.GetOpenFileName» pour obtenir le chemin du dossier avec le nom de fichier et l'extension du fichier.