Comment utiliser la méthode GetOpenFilename dans Excel 2016 VBA

Comment utiliser la méthode GetOpenFilename dans Excel 2016 VBA

Si votre procédure VBA doit demander à l'utilisateur un nom de fichier, vous pouvez utiliser la fonction InputBox et laisser l'utilisateur d'Excel taper. Cependant, une zone de saisie n'est généralement pas le meilleur outil pour ce travail, car la plupart des utilisateurs ont du mal à se souvenir des chemins, des barres obliques inverses, des noms de fichiers et des extensions de fichiers. En d'autres termes, il est beaucoup trop facile de se tromper lors de la saisie d'un nom de fichier.

Pour une meilleure solution à ce problème, utilisez la méthode GetOpenFilename de l'objet Application, qui garantit que votre code met la main sur un nom de fichier valide, y compris son chemin complet. La méthode GetOpenFilename affiche la boîte de dialogue Ouvrir familière (une sonnerie morte pour la boîte de dialogue Excel s'affiche lorsque vous choisissez Fichier → Ouvrir → Parcourir).

La méthode GetOpenFilename n'ouvre pas réellement le fichier spécifié. Cette méthode renvoie simplement le nom de fichier sélectionné par l'utilisateur sous forme de chaîne. Ensuite, vous pouvez écrire du code pour faire ce que vous voulez avec le nom de fichier.

La syntaxe de la méthode GetOpenFilename

La syntaxe officielle de la méthode GetOpenFilename est la suivante :

object.GetOpenFilename ([fileFilter], [filterIndex],
  [titre],[boutonTexte], [multiSelect])

La méthode GetOpenFilename prend les arguments facultatifs ci-dessous.

Argument Ce qu'il fait
Filtre de fichiers Détermine les types de fichiers qui apparaissent dans la boîte de dialogue
(par exemple, *.TXT). Vous pouvez spécifier plusieurs filtres
parmi lesquels l'utilisateur peut choisir.
FiltreIndex Détermine les filtres de fichiers que la boîte de dialogue affiche par
défaut.
Titre Spécifie la légende de la
barre de titre de la boîte de dialogue .
BoutonTexte Ignoré (utilisé uniquement pour la version Macintosh d'Excel).
Sélection multiple Si True, l'utilisateur peut sélectionner plusieurs fichiers.

Un exemple GetOpenFilename

L'argument fileFilter détermine ce qui apparaît dans la liste déroulante Types de fichiers de la boîte de dialogue. Cet argument se compose de paires de chaînes de filtre de fichier suivies de la spécification de filtre de fichier générique, avec des virgules séparant chaque partie et paire. S'il est omis, cet argument prend par défaut la valeur suivante :

Tous les fichiers (*.*), *.*

Notez que cette chaîne se compose de deux parties, séparées par une virgule :

Tous les fichiers (*.*)

et

*.*

La première partie de cette chaîne est le texte affiché dans la liste déroulante Fichiers de type. La deuxième partie détermine quels fichiers la boîte de dialogue affiche. Par exemple, *.* signifie tous les fichiers.

Le code de l'exemple suivant ouvre une boîte de dialogue qui demande à l'utilisateur un nom de fichier. La procédure définit cinq filtres de fichiers. Notez que la séquence de continuation de ligne VBA est utilisée pour configurer la variable Filter ; cela permet de simplifier cet argument plutôt compliqué.

Sub GetImportFileName ()
  Dim Fininfo en tant que chaîne
  Dim FilterIndex As Long
  Diminuer le titre en tant que chaîne
  Dim FileName en tant que variante
' Configurer la liste des filtres de fichiers
  FInfo = "Fichiers texte (*.txt),*.txt," & _
      "Fichiers Lotus (*.prn),*.prn," & _
      "Fichiers séparés par des virgules (*.csv),*.csv," & _
      "Fichiers ASCII (*.asc),*.asc," & _
      "Tous les fichiers (*.*),*.*"
' Afficher *.* par défaut
  Indice de filtre = 5
' Définir la légende de la boîte de dialogue
  Titre = "Sélectionnez un fichier à importer"
' Récupère le nom du fichier
  FileName = Application.GetOpenFilename (FInfo, _
    FiltreIndex, Titre)
' Gérer les informations de retour de la boîte de dialogue
  Si FileName = False Alors
    MsgBox "Aucun fichier n'a été sélectionné."
  Autre
    MsgBox « Vous avez sélectionné » & FileName
  Fin si
Fin du sous-marin

Voici la boîte de dialogue qu'Excel affiche lorsque vous exécutez cette procédure. L'apparence peut varier en fonction de la version de Windows que vous utilisez et des options d'affichage que vous avez définies.

Comment utiliser la méthode GetOpenFilename dans Excel 2016 VBA

La méthode GetOpen Filename affiche une boîte de dialogue personnalisable et renvoie le chemin et le nom du fichier sélectionné. Il n'ouvre pas le fichier.

Dans une application réelle, vous feriez quelque chose de plus significatif avec le nom de fichier. Par exemple, vous pouvez l'ouvrir en utilisant une instruction telle que celle-ci :

Workbooks.Open FileName

Notez que la variable FileName est déclarée en tant que type de données Variant. Si l'utilisateur clique sur Annuler, cette variable contient une valeur booléenne (False). Sinon, FileName est une chaîne. Par conséquent, l'utilisation d'un type de données Variant gère les deux possibilités.


Feuille intelligente 9.1.1

Feuille intelligente 9.1.1

Smartsheet est une plateforme de travail dynamique qui vous permet de gérer des projets, de créer des flux de travail et de collaborer avec votre équipe.

SharePoint

SharePoint

SharePoint est un système de collaboration basé sur le Web qui utilise une variété d'applications de flux de travail, des bases de données de « liste » et d'autres composants Web, ainsi que des fonctionnalités de sécurité pour donner le contrôle aux groupes professionnels qui travaillent ensemble.

Calendrier perpétuel 1.0.38/1.0.36

Calendrier perpétuel 1.0.38/1.0.36

Van Nien Calendar est une application d'affichage de calendrier sur votre téléphone, vous aidant à voir rapidement la date luni-solaire sur votre téléphone, organisant ainsi votre travail important.

Microsoft Outlook 2021

Microsoft Outlook 2021

Microsoft Outlook est une application commerciale et de productivité développée par Microsoft Corporation.

Cliquez vers le haut

Cliquez vers le haut

ClickUp est l'une des plateformes de productivité les mieux notées pour toutes les entreprises. Les grandes entreprises comme Google, Booking.com, San Diego Padres et Uber utilisent toutes ClickUp pour augmenter la productivité sur le lieu de travail.

Visionneuse PDF-XChange 2.5.322.10

Visionneuse PDF-XChange 2.5.322.10

Le PDF est devenu un format couramment utilisé pour lire, créer et envoyer des documents texte. À son tour, le nombre de programmes utilisés pour ce type de documentation a augmenté. PDF-XChange Viewer fait partie d'un nombre croissant de visualiseurs PDF.

Apache OpenOffice

Apache OpenOffice

Apache OpenOffice propose une suite complète d'applications Office qui rivalisent avec Microsoft 365, notamment dans Excel, PowerPoint et Word. Il vous permet de gérer vos projets plus efficacement et prend en charge plusieurs formats de fichiers.

Télécharger iTaxviewer 1.8.7

Télécharger iTaxviewer 1.8.7

Le logiciel iTaxViewer est aujourd'hui le logiciel de lecture de fichiers XML le plus populaire. Ce logiciel est une application de lecture des déclarations fiscales électroniques au format XML de la Direction Générale des Impôts.

Lecteur PDF Nitro

Lecteur PDF Nitro

Nitro PDF Reader est un éditeur PDF pratique qui couvre toutes les tâches de base que la plupart des gens effectuent quotidiennement avec des documents PDF.

Lecteur Foxit 12

Lecteur Foxit 12

Foxit Reader est avant tout un lecteur PDF et vous permet également de créer des fichiers PDF, de les signer, de les modifier et d'ajouter des annotations. Il fonctionne sur les systèmes d'exploitation, il existe des plugins pour divers programmes du package Microsoft Office.