Vba Excel-如果特定单元格发生更改,则自动按列排序
我有一份Excel 2010的报告,可以刷新。单元格S3包含一个唯一的8位数字,每次刷新报告时该数字都会不同。第1行和第2行只是标题和其他信息;实际数据在第3行向下返回 我想做的是让报表自动对第3行的任何数据进行排序,A-Z按F列排序,当然还有所有相邻的数据以及它们各自的行,如果单元格S3的内容发生变化,这是有意义的话 这在VBA中可能吗 非常感谢。您可以使用以下活动:Vba Excel-如果特定单元格发生更改,则自动按列排序,vba,sorting,excel,Vba,Sorting,Excel,我有一份Excel 2010的报告,可以刷新。单元格S3包含一个唯一的8位数字,每次刷新报告时该数字都会不同。第1行和第2行只是标题和其他信息;实际数据在第3行向下返回 我想做的是让报表自动对第3行的任何数据进行排序,A-Z按F列排序,当然还有所有相邻的数据以及它们各自的行,如果单元格S3的内容发生变化,这是有意义的话 这在VBA中可能吗 非常感谢。您可以使用以下活动: Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 19 And Target.Row = 3 Then
Dim lastrow As Long
lastrow = Cells(Rows.Count, 2).End(xlUp).Row
Range("A3:F" & lastrow).Sort key1:=Range("F3:F" & lastrow), _
order1:=xlAscending, Header:=xlNo
End If
End Sub
有关排序,请参阅。
然而:
当单元格在重新计算过程中发生更改时,不会发生此事件。
使用事件捕获图纸重新计算
如果需要检查由重新计算引起的值更改,则必须将S3单元格的旧值存储在变量中,并将此旧值与新值进行比较。看