我正在使用下面的代码(效果很好),但是一旦我在“关联”列中选择某人,该表就会自动对数据进行排序,但它将带回到表的顶部。我想停留在我刚完成的当前行中。我不想继续向下滚动。有可能吗?
Private Sub Worksheet_Change(ByVal Target As Range)
ThisWorkbook.Sheets("Log").ListObjects("Table1").Sort.SortFields.Clear
ThisWorkbook.Sheets("Log").ListObjects("Table1").Sort.SortFields. _
Add Key:=Range("Table1[[#ALL],[Date]]"), SortOn:=xlSortOnValues, Order _
:=xlAscending, DataOption:=xlSortNormal
ThisWorkbook.Sheets("Log").ListObjects("Table1").Sort.SortFields. _
Add Key:=Range("Table1[[#All],[Time]]"), SortOn:=xlSortOnValues, Order _
:=xlAscending, DataOption:=xlSortNormal
If Not Intersect(Target, Range("Table1[[#All],[Associate]]")) Is Nothing Then
With ThisWorkbook.Sheets("Log").ListObjects("Table1").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End If
End Sub
答案 0 :(得分:1)
也许就像添加最后一个Target.Activate
一样简单。