Une macro Excel pour déterminer si un classeur existe

Cette macro Excel vous permet de passer un chemin de fichier pour déterminer si le fichier est là. Par exemple, vous pouvez avoir un processus qui manipule un fichier quelque part sur votre PC. Par exemple, vous devrez peut-être ouvrir un classeur existant pour y ajouter des données sur une base quotidienne. Dans ce cas, vous devrez peut-être tester pour voir si le fichier dont vous avez besoin pour manipuler existe.

Sommaire

Comment les œuvres macro

La première chose à noter à propos de cette macro est qu'il est une fonction, pas une procédure Sub. Faire cette macro fonction vous permet de passer tout le chemin du fichier à elle.

Dans cette macro, vous utilisez la fonction Dir, qui renvoie une chaîne qui représente le nom du fichier qui correspond à ce que vous lui transmettez. Cette fonction peut être utilisée dans beaucoup de façons, mais ici, vous l'utiliser pour vérifier si le chemin du fichier que vous passez à elle existe:

Fonction FileExists (FPATH As String) As Boolean'Step 1: Déclarez votre variablesDim FName Comme String'Step 2: Utilisez la fonction Dir pour obtenir le filenameFName = Dir (FPath) "Etape 3: Si le fichier existe, reviennent True- autre FalseIf FName lt;> "" Puis FileExists = True _Else: FileExists = FalseEnd Fonction



Étape 1 déclare une variable String qui détient le nom de fichier qui revient de la fonction Dir. FName est le nom de la variable String.

Dans l'étape 2, vous tentez de définir la variable FName. Vous faites cela en passant la variable FPath à la fonction Dir. Cette variable FPath est passé via les déclarations de fonctions (voir la première ligne du code). Cette structure vous évite d'avoir à coder en dur un chemin de fichier, passant comme une variable à la place.

Si la variable FName ne peut être réglé, ne existe pas le chemin que vous avez passé. Ainsi, la variable FName est vide. Étape 3 ne fait que traduire ce résultat à une expression Vrai ou Faux.

Encore une fois, cette fonction peut être utilisée pour évaluer tout le chemin du fichier que vous lui transmettez. Ceci est la beauté de la rédaction de la macro en fonction.

La macro suivante montre comment utiliser cette fonction:

Sub Macro1 () Si FileExists ("C: Temp MyNewBook.xlsx") = ". Existe Fichier" True ThenMsgBox ". Fichier inexistant" ElseMsgBox End Sub IfEnd

Comment utiliser la macro

Pour mettre en œuvre cette macro, vous pouvez copier et coller les deux morceaux de code dans un module standard:

  1. Activer Visual Basic Editor en appuyant sur Alt + F11.

  2. droit; cliquez sur le nom du projet / classeur dans la fenêtre de projet.

  3. Choisissez Insertion-Module.

  4. Tapez ou collez le code dans le module nouvellement créé.


» » » » Une macro Excel pour déterminer si un classeur existe