Gérer WorkPath inexistant
Bonjour,
J'ai un petit problème dans une macro en VBA :
Pour vous faire simple, la Macro a pour but de récupérer des données dans plusieurs fichiers pour les agréger dans un seul
Pour ouvrir les fichiers afin de récupérer les données, il y a deux listes déroulantes qui pemettent à l'utilisateur de rensiegner le mois et l'année des fichiers qu'il va falloir ouvrir et qui correspondent à deux dossiers (dans le dossier ANNEE, il y a le dossier MOIS et à l'intèrieur les fichiers avec les données à récupérer...)
Actuellement j'ai ceci qui fonctionne :
Sub Monthly()
Dim C As Range
chemin = ThisWorkbook.Path
' /////////////////////////Ouverture du 1er fichier :///////////////////////////////////////////////
Workbooks.Open Filename:=chemin & "\" & Sheets(1).Range("A2").Text & "\" & Sheets(1).Range("A1").Text & "\test\Function Cout- 0001X0R43 - " & Sheets(1).Range("A1").Text & " " & Sheets(1).Range("A2").Text & ".xls"
' Copie des données : ...Seulement maintenant il faut que je règle le problème lorsqu'il n'y a pas de dossier présent et j'aimerais donc gérer ce cas donc en gros dire SI le chemin THISWORKBOOK.Path & "\" & Sheets(1).Range("A2").Text & "\" & Sheets(1).Range("A1").Text n'existe pas alors donner un message d'erreur...
J'avais pensé à faire ceci :
txt = Dir(chemin & "\" & Sheets(1).Range("A2").Text & "\" & Sheets(1).Range("A1").Text)
'/If (txt) <> "" Then
'/If Exists(txt) Then
'/If Len(txt) <> 0 Then...
...
'/Else
'/MsgBox "Pas de fichiers"
'/End IfMais je n'arrive pas à résoudre mon problème car lorsque je tente ceci, j'ai directement le cas du ELSE et donc ceci m'affiche PAS DE FICHIERS
Voilà si vous pouviez m'aider ce serait très gentil
Cordialement.
Ok bon j'ai finalement réussi à trouver en lisant qqtutos sur le net
Voilà la réponse si ça peut aider :
chemin = ThisWorkbook.Path
If (Dir(chemin & "\" & Sheets(1).Range("A2").Text & "\" & Sheets(1).Range("A1").Text & "\", vbDirectory)) = "" Then
MsgBox "PAS DE FICHIERS! veuillez vérifier le mois et l'année"
Else