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

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:

LeGaulois

XLDnaute Nouveau
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 édition:

brice59

XLDnaute Occasionnel
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
 

LeGaulois

XLDnaute Nouveau
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
 

brice59

XLDnaute Occasionnel
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:

Pierrot93

XLDnaute Barbatruc
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
@+
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 868
Membres
103 980
dernier inscrit
grandmasterflash38