Sub test()
Dim Feuille As Worksheet
Dim indexe(1000, 1) As String
Dim Maxi As Long, encours As Long
Dim Changement As Boolean
Maxi = 1
For Each Feuille In ThisWorkbook.Worksheets
indexe(Maxi, 0) = Feuille.Name
indexe(Maxi, 1) = Feuille.Range("A1")
Maxi = Maxi + 1
Next
'tri
Do
encours = 1
Changement = False
Do
If CLng(indexe(encours, 1)) > CLng(indexe(encours + 1, 1)) Then
indexe(0, 1) = indexe(encours, 1)
indexe(0, 0) = indexe(encours, 0)
indexe(encours, 1) = indexe(encours + 1, 1)
indexe(encours, 0) = indexe(encours + 1, 0)
indexe(encours + 1, 1) = indexe(0, 1)
indexe(encours + 1, 0) = indexe(0, 0)
Changement = True
End If
encours = encours + 1
Loop Until encours = Maxi - 1
Loop Until Not Changement
For encours = 2 To Maxi - 1
ThisWorkbook.Worksheets(indexe(encours, 0)).Move after:=ThisWorkbook.Worksheets(indexe(encours - 1, 0))
Next encours
For Each Feuille In ThisWorkbook.Worksheets
Feuille.Select Replace:=False
Next
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\expdf2.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
End Sub