#excel #vba
#excel #vba
Вопрос:
Мои данные в том виде, в котором они введены
В моих данных я хочу отсортировать данные для банка 1 в порядке возрастания столбца «Характер дохода», для банка 2 в порядке возрастания столбца «Характер дохода» и так далее для всех банков. Но название банка записывается только один раз в начальной строке для банка. В каждом банке может быть много банков и много данных, поэтому, если я получу код VBA для сортировки данных одним щелчком мыши, это будет очень полезно. Спасибо
Комментарии:
1. откуда вы берете данные банков?
Ответ №1:
Комментарии к коду объясняют процесс.
Option Explicit
Sub sortAreas()
Dim a As Long
'define the worksheet
With Worksheets("sheet1")
'used range in column D
With .Range(.Cells(4, "D"), .Cells(Rows.Count, "D").End(xlUp))
'all dates in column D
With .SpecialCells(xlCellTypeConstants, xlNumbers)
'loop through Areas of discontiguous range
For a = 1 To .Areas.Count
'identify Area and expand to 4 columns wide
With .Areas(a).Resize(, 4)
'sort on the third column in ascending order
.Sort key1:=.Cells(1, 3), order1:=xlAscending, Header:=xlNo
End With
Next a
End With
End With
End With
End Sub