【发布时间】:2022-01-23 01:25:25
【问题描述】:
我正在尝试添加到我现有的工作宏中。这个宏的上半部分只是把一些单元格变成大写。最后一行用于动态排序。现在我想添加功能,仅在更改单元格的 Q 列有值时才进行排序。
在我看来,添加类似于 If $Q "" 那么,然后是排序
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
If Not Intersect(Range("i2:n1000,r2:aa1000"), Target) Is Nothing Then
Application.ScreenUpdating = False
Application.EnableEvents = False
For Each rng In Intersect(Range("j2:o1000,r2:aa1000"), Target)
rng.Value = UCase(rng.Value)
Next rng
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
Range("g1").Sort Key1:=Range("g2"), Order1:=xlAscending, Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub
【问题讨论】: