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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
| Sub RechercheCorrespondences()
Dim MC1 As String
Dim MC2 As String
Dim MC3 As String
Dim T As String
Dim DCMin As String
Dim DCMax As String
Dim DMMin As String
Dim DMMax As String
Dim A As String
Dim k As Long
Dim j As Long
MC1 = Range("B3").Value 'Récupère ce qui a été entré dans la case 'Mot-clé 1' et le stocke dans la variable MC1
MC2 = Range("D3").Value 'Récupère ce qui a été entré dans la case 'Mot-clé 2' et le stocke dans la variable MC2
MC3 = Range("F3").Value 'Récupère ce qui a été entré dans la case 'Mot-clé 3' et le stocke dans la variable MC3
T = Range("B4").Value 'Récupère ce qui a été entré dans la case 'Type' et lestocke dans la variable T
DCMin = Range("B5").Value 'Récupère ce qui a été entré dans la case 'Date de création min' et le stocke dans la variable DCMin
DCMax = Range("E5").Value 'Récupère ce qui a été entré dans la case 'Date de création max' et le stocke dans la variable DCMax
DMMin = Range("B6").Value 'Récupère ce qui a été entré dans la case 'Date de modification min' et le stocke dans la variable DMMin
DMMax = Range("E6").Value 'Récupère ce qui a été entré dans la case 'Date de modification max' et le stocke dans la variable DMMax
A = Range("B7").Value 'Récupère ce qui a été entré dans la case 'Auteur' et le stocke dans la variable A
j = 0
While List.Cells(1, j) <> ""
j = j + 1
For i = 1 To j 'i va parcourir la liste de tout les fichiers référencés précédemment
'MOTS-CLE
If List.Cells(1, i) Like "*MC1*" Or List.Cells(1, i) Like "*MC2*" Or List.Cells(1, i) Like "*MC3*" Then 'Détecte l apparition des mots-clé dans le titre du i-ème fichier
k = 17 + i
Feuil1.Cells(0, k) = List.Cells(1, i) 'Remplit la case Nom du fichier du tableu de résultats
End If
'TYPE
If T = List.Cells(2, i) Then 'Détecte si le type du i-ème fichier est celui saisi dans les critères de recherche
k = 17 + i
Feuil1.Cells(2, k) = List.Cells(2, i) 'Remplit la case Type du tableu de résultats
End If
'DATE DE CREATION
If DCMin <> "" And DCMax <> "" Then '/!\ Si une des deux dates n'est pas remplie
If DCMin >= DC Or DCMax <= DC Then
Feuil1.Cells(4, k) = List.Cells(2, i) 'Remplit la case Date de création du tableu de résultats
End If
ElseIf DCMin <> "" Then
If DCMin >= DC Then
Feuil1.Cells(4, k) = List.Cells(2, i)
End If
ElseIf DCMax <> "" Then
If DCMax <= DC Then
Feuil1.Cells(4, k) = List.Cells(2, i) 'Remplit la case Date de création du tableu de résultats
End If
End If
'DATE DE MODIFICATION
If DMMin <> "" And DMMax <> "" Then '/!\ Si une des deux dates n'est pas remplie
If DMMin >= DM Or DMMax <= DM Then
Feuil1.Cells(5, k) = List.Cells(2, i) 'Remplit la case Date de modification du tableu de résultats
End If
ElseIf DMMin <> "" Then
If DMMin >= DM Then
Feuil1.Cells(5, k) = List.Cells(2, i)
End If
ElseIf DMMax <> "" Then
If DMMax <= DM Then
Feuil1.Cells(5, k) = List.Cells(2, i) 'Remplit la case Date de modification du tableu de résultats
End If
End If
'AUTEUR
If A = List.Cells(5, i) Then 'Détecte si l auteur du i-ème fichier est celui saisi dans les critères de recherche
k = 17 + i
Feuil1.Cells(6, k) = List.Cells(2, i) 'Remplit la case Auteur du tableu de résultats
End If
Next
Wend
End Sub |
Partager