Bonjour à tous,
Au sein d'un programme de simulation de mortalité, j'ai un petit bout de code qui sert à vérifier la présence de certains fichiers. Ce bout de code utilisait la fonction filesearch qui n'est plus supportée par office 2007.
Après avoir suivi le tutoriel qui se trouve ici : http://silkyroad.developpez.com/vba/classefilesearch/, j'ai modifié mon programme comme suit :
Cependant il ne fonctionne toujours pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 Public Function CheckFiles() As Boolean Dim files(2) As String, temp As String Dim i As Integer, j As Integer Dim found As Boolean Dim Recherche As ClFileSearch.ClasseFileSearch Set Recherche = ClFileSearch.Nouvelle_Recherche files(1) = "fitModels.r" files(2) = "simModels.r" CheckFiles = True 'With Application.FileSearch '.NewSearch '.FileType = msoFileTypeAllFiles '.LookIn = ThisWorkbook.Path '.SearchSubFolders = False '.Execute With Recherche .FolderPath = ThisWorkbook.Path .SubFolders = False .Execute For i = 1 To UBound(files, 1) found = False For j = 1 To .FoundFilesCount temp = Right(.FoundFiles.Item(j), Len(.FoundFiles.Item(j)) - Len(ThisWorkbook.Path) - 1) If temp = files(i) Then found = True Exit For End If Next j If Not found Then CheckFiles = False Exit For End If Next i End With End Function
Je souhaiterais savoir par quoi je peux remplacer .FoundFiles.Item(j) car Excel me donne le message d'erreur suivant : "Erreur de compilation : Membre de méthode ou de données introuvable" au sujet de cette instruction.
J'ai essayé de mettre .Files(j).strFileName à la place mais après j'ai ce message d'erreur : "Erreur de compilation : Type d'argument ByRef incompatible".
Merci de votre aide.
Partager