[R] Ouvrir un fichier s'il existe, sinon ne rien faire

  • Initiateur de la discussion Initiateur de la discussion brice59
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

brice59

XLDnaute Occasionnel
Bonjour,

Tout est dans le titre.

j'aimerai qu'une macro recherche dans un dossier si la fichier existe,

1 s'il existe = ouvrir
2 il n'existe pas = passer à la suite (genre call macro xxx)

pouvez vous m'aider,

Merci d'avance
 
Dernière édition:
Re : [..] Ouvrir un fichier s'il existe, sinon ne rien faire

Bonjour,

Je ne suis pas sur d'avoir compris, mais est ce qu'un code du genre :
Code:
    If Dir ("D:/Tonfichier.ext", vbDirectory) = "" Then
        Exit Sub
    End If

Dans le cas qu'il n'existe pas, on quitte la sub en cours d'exécution.
Ca me parait super simple, surement que je n'ai pas compris votre question.

Edit : J'ai lu trop vite ... Ou j'ai pas tout lu...

Code:
    Dim Fso As Scripting.FileSystemObject   
    Dim FileItem As Scripting.File        

    If Dir ("C:\Tonfichier.ext", vbDirectory) = "" Then
        Exit Sub
    End If

    Set Fso = CreateObject("Scripting.FileSystemObject")
    Set FileItem = Fso.GetFile("C:\Tonfichier.ext")

Pas sur que ce soit ça que tu cherches, et aussi il faut ajouter la référence : Microsoft Scripting Runtime
 
Dernière modification par un modérateur:
Re : [..] Ouvrir un fichier s'il existe, sinon ne rien faire

ça ne fonctionne pas

voici le code un peu modifié

Code:
If Dir ("D:/Tonfichier.ext", vbDirectory) = "" Then
Workbooks.OpenText Filename:="D:/Tonfichier.ext", DataType:=1, Semicolon:=True, local:=True
else call macro 2
End If
 
Re : [..] Ouvrir un fichier s'il existe, sinon ne rien faire

Normal, puisque vous essayez d'ouvrir votre fichier lorsqu'il n'existe pas.

Quand on fait : If Dir("D:\Tonfichier.ext", vbDirectory) = "" Then
On teste s'il n'existe pas. Donc ce qui suit n'ouvrira rien : Workbooks.OpenText Filename:="D:/Tonfichier.ext", DataType:=1, Semicolon:=True, local:=True

Code:
If Dir ("D:/Tonfichier.ext", vbDirectory) = "" Then
    Call macro2
Else
    Workbooks.OpenText Filename:="D:/Tonfichier.ext", DataType:=1, Semicolon:=True, local:=True
End If
 
Re : [..] Ouvrir un fichier s'il existe, sinon ne rien faire

j'ai un problème.

lorsque le fichier existe, ça fonctionne.
Mais lorsqu'il n'existe pas il plante car il ne le trouve pas

Je l'ai changé, mais rien de fait

Code:
 If Dir("\\chemin\fichier*.ext") = "" Then
    Workbooks.OpenText Filename:="\\chemin\fichier*.ext", DataType:=1, Semicolon:=True, local:=True
    Else: Call macro2
    End If

ça n'a aucune importance que ce soit un .CSV ??
 
Dernière édition:
Re : [..] Ouvrir un fichier s'il existe, sinon ne rien faire

Bonjour,

modifie comme suit :
Code:
If Dir("\\chemin\fichier*.ext") <> "" Then
    Workbooks.OpenText Filename:="\\chemin\fichier*.ext", DataType:=1, Semicolon:=True, local:=True
    Else: Call macro2
    End If

bon après midi
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
20
Affichages
1 K
Retour