J'ai écrit une macro en tant que complément et j'ai besoin d'obtenir le chemin de la feuille de calcul actuelle sur laquelle elle est exécutée. Comment puis-je faire cela? Comment obtenir le chemin du fichier (uniquement le répertoire)?
J'ai écrit une macro en tant que complément et j'ai besoin d'obtenir le chemin de la feuille de calcul actuelle sur laquelle elle est exécutée. Comment puis-je faire cela? Comment obtenir le chemin du fichier (uniquement le répertoire)?
Réponses:
Utilisez Application.ActiveWorkbook.Pathuniquement pour le chemin d'accès lui-même (sans le nom du classeur) ou Application.ActiveWorkbook.FullNamepour le chemin d' accès avec le nom du classeur.
ActiveWorkbookc'est ce qui est nécessaire.
Excel.ActiveWorkbook.Pathne fonctionne que si le fichier a été enregistré au moins une fois. De plus, si le fichier n'a jamais été enregistré, Excel.ActiveWorkbook.FullNamerenvoie uniquement le nom du fichier. Cela peut être une bonne idée de vérifier si le classeur a déjà été enregistré .
Si vous souhaitez obtenir le chemin du classeur à partir duquel la macro est exécutée, utilisez Application.ThisWorkbook.Path.
Application.ActiveWorkbook.Pathpeut parfois produire des résultats inattendus (par exemple, si votre macro bascule entre plusieurs classeurs).
Le moyen le plus rapide
path = ThisWorkbook.Path