Sub fac()
Dim i, DerLigBase, lig As Integer
Dim dossier, sNomFeuille As String
Dim colFeuille As Collection
Dim FeuilleExist As Boolean
Dim shAct As Worksheet, sh1 As Worksheet, sh2 As Worksheet, sh3 As Worksheet, sh4 As Worksheet, sh5 As Worksheet
Dim nomNewClasseur As String
Dim Numfacture As Long
'Recherche de la dernière ligne
DerLigBase = Sheets("HR").Range("C1000").End(xlUp).Row
Set sh1 = Workbooks("affaires.xlsm").Sheets("Facture")
Set sh2 = Workbooks("affaires.xlsm").Sheets("fact")
Set sh3 = Workbooks("affaires.xlsm").Sheets("HR")
lig = sh2.Range("I1000").End(xlUp).Row
sh1.Activate
'Recherche de la ligne et tri dans chaque feuille
For i = 2 To DerLigBase
'Récupère le nom de l'onglet stocké dans la collection
sNomFeuille = sh3.Cells(i, 2).Text
'Recherche si cet onglet existe et exclure les dossiers archivés
If ActiveWorkbook.Worksheets(sNomFeuille) Is Nothing Then goto 300
...
300 next i
end sub