FileSearch

[Résolu]
Signaler
Messages postés
130
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
8 décembre 2015
-
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
-
Bonjour à tous, cette fois si je cherche un fichier Excel. j'ai utiliser la méthode FileSearch dans Excel, elle marchait très bien mais sous vb6 elle ne trouve rien. J'ai l'impression que l'objet FileSearch ne s'initialise pas. Poutant j'ai écrit "Dim MonExcel as object" dans la zone de déclaration des variables globales. Et dans la procédure d'initialisation de la Form j'ai écrit "Set MonExcel = CreateObject("Excel.Application")


With MonExcel.FileSearch
.NewSearch
.LookIn = Répertoire3
If CboType.Text = "FULL" Then
.FileName = "*Full.xls"
ElseIf CboType.Text = "MEDIUM" Then
.FileName = "*Medium.xls"
ElseIf CboType.Text = "BASIC" Then
.FileName = "*Basic.xls"
End If
.SearchSubFolders = False
.Execute
FichFile = .FoundFiles(1)
End With



nitho l'amateur

1 réponse

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
80
Salut
Pas très précis.
"elle ne trouve rien" : Déjà, avec ce code, tu dois avoir une erreur si tu tentes le FichFile = .FoundFiles(1) alors qu'il n'a rien trouvé.
Comme expliqué dans l'aide de Excel sur cette fonction, il faut tester si .Execute renvoie autre chose que 0.

Chez moi, je n'ai même pas réussi à le faire marcher, Excel semble se figer et ne plus répondre.

Si tu ne dois rechercher un fichier que dans un seul répertoire, utilise plutôt la fonction VB6 "Dir" :
  Dim sFichier As String
  sFichier = Dir("C:\Mes documents\*Full.xls")
  Do While sFichier <> ""
    MsgBox sFichier
    sFichier = Dir
  Loop


Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)