сортировка строк в excel программными средствами

Я довольно новый в создании отчетов excel с помощью vb.net. Моя проблема в том, что я не могу правильно сортировать строки.Проверьте мой excel здесь

Я хочу отсортировать все строки, включая имя клиента, используя общее значение в качестве ссылки. Я использую сборку взаимодействия, и это код, который я пробовал, но он даже не работает должным образом.

Dim myRange As Excel.Range

    myRange = Wsheet.Range("A7:AG17")
    myRange.Select()
    myRange.Sort(Key1:=myRange.Range("AG7:AG17"), _
                            Order1:=Excel.XlSortOrder.xlDescending, _
                            Orientation:=Excel.XlSortOrientation.xlSortRows, _
                            SortMethod:=Excel.XlSortMethod.xlPinYin, _
                            DataOption1:=Excel.XlSortDataOption.xlSortNormal)

1 ответ

  1. Это не использует ваши диапазоны, но для сортировки данных по итогам Вы пробовали записывать макрос, делая это сначала вручную?

    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("AG8:AG16" _
        ), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Sheet1").Sort
        .SetRange Range("A7:AG16")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With