【发布时间】:2011-05-25 16:21:57
【问题描述】:
所有,我需要编写一个执行以下操作的宏:
在E列最后一个空白单元格中输入数据,按E列降序对整个工作表进行排序
工作表排序后:
2a。将单元格复制到紧挨第一次输入数据的单元格左侧的相邻单元格
2b。将复制的数据粘贴到最初输入数据的同一行的第一列
2c。将光标移动到紧邻第一次输入数据的单元格右侧的相邻单元格
下面,我展示了输入代码的排序,它有效。但是,我无法然后获取要复制、粘贴和正确移动的代码。我最常见的问题:数据输入后,行移动,但光标停留在第一次输入数据的行。任何人都可以帮忙吗? (我什至无法在这篇文章中正确缩进!)
Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Application.Intersect(Worksheets("Sheet1").Range("E:E"), Target) Is Nothing) Then
DoSort
End If
End Sub
Private Sub DoSort()
Worksheets("Sheet1").Range("A:E").Sort Key1:=Worksheets("Sheet1").Range("E1"), Order1:=xlDescending, Header:=xlYes
End Sub
【问题讨论】:
-
感谢您的帮助,@Jean-François Corbett。请看下面的评论。