Accélérer recherche répertoires ?

Le
sonia.gaubert
Bonjour,
J'ai cr un bouton qui depuis ma base access va vrifier l'existence
de fichiers numriques (documents numriss dont les descriptions son=
t
enregistres dans une table) dans des rpertoires : ci-dessous je
recopie le code.
Cela fonctionne sauf que cela mets beaucoup de temps rpondre !
Sauriez-vous s'il y aurait moyen d'acclrer le processus ?
Par avance, merci :o)
Sonia.

Private Sub BtnVerifRep_Click()
Dim fs
Dim I As Integer
Dim NomFichier As String
NomFichier = Me.CoteDoc
Dim NomRepFonds As String
NomRepFonds = "I:" & Me![Abreviation]
Dim IntFile As Integer
Dim StrFile As String, listeRep As String
Dim strDir As String
IntFile = 0
StrFile = ""
Set fs = Application.FileSearch
With fs
.NewSearch
.LookIn = NomRepFonds
.SearchSubFolders = True
.filename = NomFichier & ".jpg"

If .Execute < 1 Then
MsgBox "Il n'existe aucun fichier numrique portant le nom : "
& NomFichier, vbInformation, "PAS DE FICHIER NUMERIQUE !"
If (Me![Numerise]) = True Then
Me![Numerise] = False
End If
If Not IsNull(Me![NivIllustr]) Then
Me![NivIllustr] = ""
End If
ElseIf .Execute >= 1 Then
For IntFile = 1 To .FoundFiles.Count
StrFile = .FoundFiles(IntFile)
StrFile = "I" & Right(StrFile, Len(StrFile) - (Len(strDir) +
1))

listeRep = listeRep & vbCrLf & StrFile
Next

MsgBox "Il existe" & .FoundFiles.Count & " fichier(s) jpg dnomm
(s) " & NomFichier & " dans le(s) rpertoire(s) : " & vbCrLf &
listeRep, vbInformation, "PLUSIEURS FICHIERS"

End If
End With


End Sub
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Michel__D
Le #18949211
Bonjour,

a écrit :
Bonjour,
J'ai créé un bouton qui depuis ma base access va vérifier l'existence
de fichiers numériques (documents numérisés dont les descriptions sont
enregistrées dans une table) dans des répertoires : ci-dessous je
recopie le code.
Cela fonctionne sauf que cela mets beaucoup de temps à répondre !
Sauriez-vous s'il y aurait moyen d'accélérer le processus ?
Par avance, merci :o)
Sonia.

Private Sub BtnVerifRep_Click()
Dim fs
Dim I As Integer
Dim NomFichier As String
NomFichier = Me.CoteDoc
Dim NomRepFonds As String
NomRepFonds = "I:" & Me![Abreviation]
Dim IntFile As Integer
Dim StrFile As String, listeRep As String
Dim strDir As String
IntFile = 0
StrFile = ""
Set fs = Application.FileSearch
With fs
.NewSearch
.LookIn = NomRepFonds
.SearchSubFolders = True
.filename = NomFichier & ".jpg"

If .Execute < 1 Then
MsgBox "Il n'existe aucun fichier numérique portant le nom : "
& NomFichier, vbInformation, "PAS DE FICHIER NUMERIQUE !"
If (Me![Numerise]) = True Then
Me![Numerise] = False
End If
If Not IsNull(Me![NivIllustr]) Then
Me![NivIllustr] = ""
End If
ElseIf .Execute >= 1 Then
For IntFile = 1 To .FoundFiles.Count
StrFile = .FoundFiles(IntFile)
StrFile = "I" & Right(StrFile, Len(StrFile) - (Len(strDir) +
1))

listeRep = listeRep & vbCrLf & StrFile
Next

MsgBox "Il existe" & .FoundFiles.Count & " fichier(s) jpg dénommé
(s) " & NomFichier & " dans le(s) répertoire(s) : " & vbCrLf &
listeRep, vbInformation, "PLUSIEURS FICHIERS"

End If
End With


End Sub



Tu pourrais effectuer la recherche à l'ouverture du formulaire
et stocker le résultat.

Autre chose si tu stocke le résultat tu pourrais ensuite vérifier
si le fichier existe et s'il n'existe pas effectuer une recherche.
Publicité
Poster une réponse
Anonyme