OVH Cloud OVH Cloud

Vérifier l'existence d'un fichier

5 réponses
Avatar
Jerome
Bonjour,
J'utilise la macro suivante pour ouvrir un fichier en fonction du contenu de
2 cellules :
If IsEmpty(Range("i25")) Then MsgBox "Entrez un nom et un prénom"
[i31] = ([i25] & "_" & [I26])
ChDir "C:\accords_09\FICHES"
Workbooks.Open Filename:=Range("I31").Value

Si le fichier n'existe pas je dois débogger ou arrêter, comment faire pour
vérifier si le fichier existe ou pas ?
Merci d'avance pour vos réponses.
Jérôme

5 réponses

Avatar
FxM
Bonjour,
J'utilise la macro suivante pour ouvrir un fichier en fonction du contenu de
2 cellules :
If IsEmpty(Range("i25")) Then MsgBox "Entrez un nom et un prénom"
[i31] = ([i25] & "_" & [I26])
ChDir "C:accords_09FICHES"
Workbooks.Open Filename:=Range("I31").Value

Si le fichier n'existe pas je dois débogger ou arrêter, comment faire pour
vérifier si le fichier existe ou pas ?
Merci d'avance pour vos réponses.
Jérôme




Bonsoir,

qq chose comme :

chemin = "C:accords_09FICHES"
fil = Range("I31").Value
tout = chemin & "" & fil
if dir(tout) = fil then
workbooks.open filename = tout
else
msgbox "fichier absent"
end if

@+
FxM

Avatar
denis P
Salut
Peut être de cette façon ?
denis p.

''''''''''''''''''''''''''''''''''''''''''''''''
Function Existe(Fichier As String) As Boolean
If Dir(Fichier) <> "" Then Existe = True
End Function

Sub test()
MsgBox Existe("D:Classeur1.xls")
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

"Jerome" a écrit dans le message de
news:
Bonjour,
J'utilise la macro suivante pour ouvrir un fichier en fonction du contenu
de

2 cellules :
If IsEmpty(Range("i25")) Then MsgBox "Entrez un nom et un prénom"
[i31] = ([i25] & "_" & [I26])
ChDir "C:accords_09FICHES"
Workbooks.Open Filename:=Range("I31").Value

Si le fichier n'existe pas je dois débogger ou arrêter, comment faire pour
vérifier si le fichier existe ou pas ?
Merci d'avance pour vos réponses.
Jérôme




Avatar
Jerome
Bonjour FxM,
Merci pour la réponse, mais maintenant même si le fichier existe j'ai le
message Fichier absent.
Je n'arrive pas à trouver l'erreur.
Merci de m'aider encore.
@+tard
Jérôme

"FxM" a écrit dans le message de
news:
Bonjour,
J'utilise la macro suivante pour ouvrir un fichier en fonction du
contenu de


2 cellules :
If IsEmpty(Range("i25")) Then MsgBox "Entrez un nom et un prénom"
[i31] = ([i25] & "_" & [I26])
ChDir "C:accords_09FICHES"
Workbooks.Open Filename:=Range("I31").Value

Si le fichier n'existe pas je dois débogger ou arrêter, comment faire
pour


vérifier si le fichier existe ou pas ?
Merci d'avance pour vos réponses.
Jérôme




Bonsoir,

qq chose comme :

chemin = "C:accords_09FICHES"
fil = Range("I31").Value
tout = chemin & "" & fil
if dir(tout) = fil then
workbooks.open filename = tout
else
msgbox "fichier absent"
end if

@+
FxM



Avatar
FxM
Bonjour,

Achh, je viens de faire l'essai et ca fonctionne chez moi avec :
- I31 contenant le nom du fichier avec son extension,
- la macro dans un module standard (pas module de feuille).
Enfin (à vérifier) la macro doit être dans un module standard (pas
module de feuille).

Sur le principe, dir(...) te renvoit :
- le nom du fichier s'il existe,
- rien en cas d'absence.

Pour voir les détails, insère une ligne avec 'stop' (sans les ') au
début de ta macro, ensuite presse F8 pour que chaque instruction soit
executé pas à pas.

@+
FxM


Bonjour FxM,
Merci pour la réponse, mais maintenant même si le fichier existe j'ai le
message Fichier absent.
Je n'arrive pas à trouver l'erreur.
Merci de m'aider encore.
@+tard
Jérôme

"FxM" a écrit dans le message de
news:


Bonjour,
J'utilise la macro suivante pour ouvrir un fichier en fonction du



contenu de

2 cellules :
If IsEmpty(Range("i25")) Then MsgBox "Entrez un nom et un prénom"
[i31] = ([i25] & "_" & [I26])
ChDir "C:accords_09FICHES"
Workbooks.Open Filename:=Range("I31").Value

Si le fichier n'existe pas je dois débogger ou arrêter, comment faire



pour

vérifier si le fichier existe ou pas ?
Merci d'avance pour vos réponses.
Jérôme




Bonsoir,

qq chose comme :

chemin = "C:accords_09FICHES"
fil = Range("I31").Value
tout = chemin & "" & fil
if dir(tout) = fil then
workbooks.open filename = tout
else
msgbox "fichier absent"
end if

@+
FxM








Avatar
Jerome
Merci beaucoup ça fonctionne à présent, il n'y avait pas l'extension .xls en
I31
[i31] = ([i25] & "_" & [I26]) au lieu de [i31] = ([i25] & "_" & [I26] &
".xls")
Encore merci.
@+tard
Jérôme

"FxM" a écrit dans le message de
news:%
Bonjour,

Achh, je viens de faire l'essai et ca fonctionne chez moi avec :
- I31 contenant le nom du fichier avec son extension,
- la macro dans un module standard (pas module de feuille).
Enfin (à vérifier) la macro doit être dans un module standard (pas
module de feuille).

Sur le principe, dir(...) te renvoit :
- le nom du fichier s'il existe,
- rien en cas d'absence.

Pour voir les détails, insère une ligne avec 'stop' (sans les ') au
début de ta macro, ensuite presse F8 pour que chaque instruction soit
executé pas à pas.

@+
FxM


Bonjour FxM,
Merci pour la réponse, mais maintenant même si le fichier existe j'ai le
message Fichier absent.
Je n'arrive pas à trouver l'erreur.
Merci de m'aider encore.
@+tard
Jérôme

"FxM" a écrit dans le message de
news:


Bonjour,
J'utilise la macro suivante pour ouvrir un fichier en fonction du



contenu de

2 cellules :
If IsEmpty(Range("i25")) Then MsgBox "Entrez un nom et un prénom"
[i31] = ([i25] & "_" & [I26])
ChDir "C:accords_09FICHES"
Workbooks.Open Filename:=Range("I31").Value

Si le fichier n'existe pas je dois débogger ou arrêter, comment faire



pour

vérifier si le fichier existe ou pas ?
Merci d'avance pour vos réponses.
Jérôme




Bonsoir,

qq chose comme :

chemin = "C:accords_09FICHES"
fil = Range("I31").Value
tout = chemin & "" & fil
if dir(tout) = fil then
workbooks.open filename = tout
else
msgbox "fichier absent"
end if

@+
FxM