티스토리 뷰

엑셀

엑셀 trFunc_정렬

아스C# 2018. 11. 24. 09:31
반응형



Function trFunc_정렬(stname As String, rng As String, Row_Start As Integer, Row_End As Integer, field1 As String, Optional field2 As String, Optional field3 As String, Optional field4 As String, Optional field5 As String)

    ActiveWorkbook.Worksheets(stname).Sort.SortFields.Clear

    ActiveWorkbook.Worksheets(stname).Sort.SortFields.Add Key:=Range(field1 & Row_Start & ":" & field1 & Row_End), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

    If field2 <> nil Then

      ActiveWorkbook.Worksheets(stname).Sort.SortFields.Add Key:=Range(field2 & Row_Start & ":" & field2 & Row_End), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

    End If

    If field3 <> nil Then

      ActiveWorkbook.Worksheets(stname).Sort.SortFields.Add Key:=Range(field3 & Row_Start & ":" & field3 & Row_End), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

    End If

    

    With ActiveWorkbook.Worksheets(stname).Sort

        .SetRange Range(rng)

        .header = xlYes

        .MatchCase = False

        .Orientation = xlTopToBottom

        .SortMethod = xlPinYin

        .Apply

    End With


End Function


Function trFunc_정렬_헤더없슴(stname As String, rng As String, Row_Start As Integer, Row_End As Integer, field1 As String, Optional field2 As String, Optional field3 As String, Optional field4 As String, Optional field5 As String)

    ActiveWorkbook.Worksheets(stname).Sort.SortFields.Clear

    ActiveWorkbook.Worksheets(stname).Sort.SortFields.Add Key:=Range(field1 & Row_Start & ":" & field1 & Row_End), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

    If field2 <> nil Then

      ActiveWorkbook.Worksheets(stname).Sort.SortFields.Add Key:=Range(field2 & Row_Start & ":" & field2 & Row_End), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

    End If

    If field3 <> nil Then

      ActiveWorkbook.Worksheets(stname).Sort.SortFields.Add Key:=Range(field3 & Row_Start & ":" & field3 & Row_End), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

    End If

    

    With ActiveWorkbook.Worksheets(stname).Sort

        .SetRange Range(rng)

        .header = xlNo

        .MatchCase = False

        .Orientation = xlTopToBottom

        .SortMethod = xlPinYin

        .Apply

    End With


End Function







.




반응형

'엑셀' 카테고리의 다른 글

엑셀 vba func_Print_Seting 프린터 설정  (0) 2018.11.24
엑셀 vba 출력_업체시트  (0) 2018.11.24
담당별분리  (0) 2018.11.23
Area_Init  (0) 2018.11.23
Row 숨기기, 해제  (0) 2018.11.23
댓글