当用户从Excel中的用户表单中选中复选框时,我尝试根据特定条件对范围进行排序。
用户可以选择4个复选框(每个复选框将对特定范围进行排序)。我已经尝试了一些方法,似乎无法弄清楚,我一直在寻找" Object Required"运行时错误
Private Sub btnConfirm_Click()
If (chkbxValid.value) Then
SortData (Range("H4:I1000"))
End If
If (chkbxValidDuplicate.value) Then
SortData (Range("K4:L1000"))
End If
If (chkbxInvalid.value) Then
SortData (Range("N4:O1000"))
End If
If (chkbxInvalidDuplicate.value) Then
SortData (Range("Q4:R1000"))
End If
End Sub
然后是第二段代码
Private Function SortData(rng As Range)
FR = 1
FC = 1
LR = 1000
LC = 2
SC = 2
Sheets("TRACKER_2.0").rng(cells(FR, FC), cells(LR, LC)).Sort Key1:=Range(cells(FR, SC), cells(LR, SC)), Order1:=xlAscending
End Function
答案 0 :(得分:1)
对于排序,还有更多标准:
fr = 1 'first row
fc = 1 'first column
lr = 200 'last row
lc = 10 'last column
sc = 4 'sort column
Range(Cells(fr,fc),Cells(lr,lc)).Sort key1:=Range(Cells(fr,sc),CellS(lr,sc)), order1:=xlAscending, Header:=xlNo
使用范围(“A1”)样式格式:
lr = 200 'last row
Range("A1:J" & lr).Sort key1:=Range("D1:D" & lr), order1:=xlAscending, Header:=xlNo