Sub ListePlans()
Dim Doss As String, Fichier As String, Ligne As String, Plan As String, Vers As String, i As Long
Doss = ThisWorkbook.Worksheets("Scan").Range("Dossier").Value
ReDim Liste(1 To 2, 1 To 1)
Fichier = Dir(Doss & "*.catdrawing")
i = 1
Do While Fichier <> ""
If Fichier Like "#*" Then
Fichier = Left(Fichier, InStrRev(Fichier, ".") - 1)
If InStr(1, Fichier, ".") <> 0 Then
Vers = UCase(Right(Fichier, Len(Fichier) - InStrRev(Fichier, ".")))
If Len(Vers) = 1 And Asc(UCase(Vers)) > 64 And Asc(UCase(Vers)) < 91 Then
Vers = UCase(Right(Fichier, Len(Fichier) - InStrRev(Fichier, ".")))
Plan = Left(Fichier, InStrRev(Fichier, ".") - 1)
Else
Vers = " "
Plan = Fichier
End If
Else
Vers = " "
Plan = Fichier
End If
Ligne = ExisteDansTab(Plan)
If Ligne > 0 Then
If Asc(Liste(2, Ligne)) < Asc(Vers) Then
Liste(2, Ligne) = Vers
End If
Else
ReDim Preserve Liste(1 To 2, 1 To i)
Liste(1, i) = Plan
Liste(2, i) = Vers
i = i + 1
End If
End If
Fichier = Dir
Loop
With ThisWorkbook.Worksheets("Scan")
.Range(.Range("Début"), .Range("B65536")).ClearContents
Ligne = .Range("A65536").End(xlUp).Row + 1
For i = 1 To 2
For j = 1 To UBound(Liste, 2)
.Cells(Ligne + j - 1, i).Value = Liste(i, j)
Next j
Next i
End With
End Sub