Sub ExportFilteredData()
Dim shGen As Worksheet
Dim shDicom As Worksheet
Dim DirDICOM As String
Set shGen = Sheets("Tab_Général")
Set shDicom = Sheets("Auto_DICOM")
DirDICOM = "DICOM"
Dim LastRow As Long
Dim LastColumn As Long
Dim StartCell As Range
Set StartCell = Range("A16")
Worksheets("Tab_Général").UsedRange
LastRow = shGen.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
shGen.Range("A16:P" & LastRow).AutoFilter
shGen.Range("A16:P" & LastRow).AutoFilter Field:=3, Criteria1:=DirDICOM
shGen.Range("A16:P" & LastRow).Select
shGen.Range("A16:P" & LastRow).Copy
shDicom.Range("A16").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False
shGen.AutoFilterMode = False
shGen.ShowAllData
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Add Key:=Range("Tableau12[[#All],[Date création]]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Dim shDAP As Worksheet
Dim DirDAP As String
Set shDAP = Sheets("Auto_DAP")
DirDAP = "DAP"
Worksheets("Tab_Général").UsedRange
LastRow = shGen.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
shGen.Range("A16:P" & LastRow).AutoFilter
shGen.Range("A16:P" & LastRow).AutoFilter Field:=3, Criteria1:=DirDAP
shGen.Range("A16:P" & LastRow).Select
shGen.Range("A16:P" & LastRow).Copy
shDAP.Range("A16").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False
shGen.AutoFilterMode = False
shGen.ShowAllData
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Add Key:=Range("Tableau12[[#All],[Date création]]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Dim shDSJ As Worksheet
Dim DirDSJ As String
Set shDSJ = Sheets("Auto_DSJ")
DirDSJ = "DSJ"
Worksheets("Tab_Général").UsedRange
LastRow = shGen.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
shGen.Range("A16:P" & LastRow).AutoFilter
shGen.Range("A16:P" & LastRow).AutoFilter Field:=3, Criteria1:=DirDSJ
shGen.Range("A16:P" & LastRow).Select
shGen.Range("A16:P" & LastRow).Copy
shDSJ.Range("A16").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False
shGen.AutoFilterMode = False
shGen.ShowAllData
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Add Key:=Range("Tableau12[[#All],[Date création]]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Dim shDPJJ As Worksheet
Dim DirDPJJ As String
Set shDPJJ = Sheets("Auto_DPJJ")
DirDPJJ = "DPJJ"
Worksheets("Tab_Général").UsedRange
LastRow = shGen.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
shGen.Range("A16:P" & LastRow).AutoFilter
shGen.Range("A16:P" & LastRow).AutoFilter Field:=3, Criteria1:=DirDPJJ
shGen.Range("A16:P" & LastRow).Select
shGen.Range("A16:P" & LastRow).Copy
shDPJJ.Range("A16").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False
shGen.AutoFilterMode = False
shGen.ShowAllData
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Add Key:=Range("Tableau12[[#All],[Date création]]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Dim shPVAM As Worksheet
Dim DirPVAM As String
Set shPVAM = Sheets("Auto_PVAM")
DirPVAM = "PVAM"
Worksheets("Tab_Général").UsedRange
LastRow = shGen.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
shGen.Range("A16:P" & LastRow).AutoFilter
shGen.Range("A16:P" & LastRow).AutoFilter Field:=3, Criteria1:=DirPVAM
shGen.Range("A16:P" & LastRow).Select
shGen.Range("A16:P" & LastRow).Copy
shPVAM.Range("A16").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False
shGen.AutoFilterMode = False
shGen.ShowAllData
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort. _
SortFields.Add Key:=Range("Tableau12[[#All],[Date création]]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tab_Général").ListObjects("Tableau12").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub