Débutant : Tester la présence d'un fichier.

rambc Messages postés 224 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 29 mars 2009 - 7 nov. 2004 à 14:13
rambc Messages postés 224 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 29 mars 2009 - 8 nov. 2004 à 18:15
Comment tester sous VBA Word 2000 la présence d'un fichier sans avoir à l'ouvrir ?

Merci.

4 réponses

thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 6
7 nov. 2004 à 14:42
if dir("c:\test.txt") <> "" then

..........

end if
0
rambc Messages postés 224 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 29 mars 2009
7 nov. 2004 à 20:17
Merci,
mais je veux tester une présence sur tout le disque dur sans connaître le dossier où se trouve le fichier (peut-être as-tu la solution ?). Mais merci de l'info, cela peut toujours servir.
0
thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 6
7 nov. 2004 à 22:24
dans le moteur de recherche du tape "rechercher fichier"
0
rambc Messages postés 224 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 29 mars 2009
8 nov. 2004 à 18:15
Voilà la réponse (et merci à Thierry).

On cherche à tester si CheminDOuverture est un bon chemin d'accès à un fichier "NomDeLogiciel.exe". Si ce n'est pas le cas, on essaye de voir si le fichier n'est pas dans un autre dossier, et si tel est le cas on trouve le nouveau chemin d'accès.

sub ramTROUVER()
Dim I,N as Long
Dim NomFichierExe, CheminDOuverture as String

CheminDOuverture ="C:\TrucMucheCorporation\TrucMuche.exe"

If Dir(CheminDOuverture) = "" Then
' On n'a pas le bon chemin d'accès.
I = InStrRev(CheminDOuverture, "")
NomFichierExe = Mid(CheminDOuverture, I + 1, Len(CheminDOuverture) - I)
' On retrouve "TrucMuche.exe"
CheminDOuverture = ""

With Application.FileSearch
.NewSearch
.LookIn = "C:"
.SearchSubFolders = True
.MatchTextExactly = False
.FileName = NomFichierExe
.FileType = msoFileTypeAllFiles
End With

With Application.FileSearch
If .Execute() > 0 Then
I = 1
N = .FoundFiles.Count

Do While I <= N
' On teste la présence d'un bon chemin.
If Dir(.FoundFiles(I)) <> "" Then
' On a trouvé le nouveau chemin.
CheminDOuverture = .FoundFiles(I)
I = N + 1
End If
I = I + 1
Loop
End If
End With
End If

If CheminDOuverture ="" Then
' Le fichier n'est pas présent.
Else
' Le fichier est présent et son
' chemin d'accès est CheminDOuverture .
End If

End Sub
0
Rejoignez-nous